»»» Consulta dentro de uma Query ???

31/01/2003

0

Gostaria de saber se há uma maneira de fazer uma consulta dentro de um resultado de uma query.

Exemplo:

query1 <- Select * from Produtos;

ListBox1 <- Select Valor from QUERY1 where blablabla

:arrow: a sintaxe a cima não existe, claro, mas só para poder expor o meu objetivo. Acredito que tenham entendido.

Agradeço qualquer ajuda. :)

Alex


Anonymous

Anonymous

Responder

Posts

31/01/2003

Dog_hunter

Não existe.
O servidor IB, Oracle, MySQL, etc... só roda uma query. Isto não é uma limitação e sim um fato de lógica.
Na minha opinião, você deveria melhorar a sua query, e não criar outra. Se você não conseguir montar a query, é sinal que a estrutura do bd não foi bem feita.
Exemplo:
Tabela1: Cod_aluno, nome, sexo
Tabela2: Cod_serie, cod_aluno

vc quer saber quantos alunos do sexo masculino estão na serie tal:

select * from Tabela1, Tabela2 where Tabela2.Cod_serie=2 and Tabela1.Cod_aluno=Tabela2.Cod_aluno and Tabela1.sexo=´M´;

E para mandar o resultado da query para uma listbox:

begin
qry.Close;
qry.sql.clear;
qry.sql.add(Select Valor from QUERY1 where blablabla ´);
qry.open;
qry.first;
while not qry.eof do
begin
minha_list_box.items.add(qry.fields[0].asstring);
qry.next;
end;
qry.Close;
end;

Você pode ´jogar´ o valor de uma instrução SELECT para uma variável, mas isto seria no servidor. O MySQL permite que você crie tabelas temporárias oriundas de um SELECT, mas acho que não é o seu caso.

Seria esta a sua dúvida?

Abraços,

Rodrigo


Responder

15/03/2003

Anonymous

Meu caro, você não pode executar uma query que rode em cima do resultado de outra, porém, você pode fazer uma query com dois SELECT, um dentro do outro.
Infelizmente não me lembro a sintaxe.
Existe ainda o GROUP BY e o INNER JOIN, experimente.

Boa Sorte,
Renaldo.


Responder

16/03/2003

Hertz

hi,

Tudo é possivel de forma relativa!

No access é possível.

Existe um componente que pode fazer o que vc quer, mas em access, o KaDao.

Vc faz as query´s no access e utiliza no delphi, pode parametrizar ambas de forma sicrona ou assincrona, com uma ou duas TQuery´s no Delphi.

Em outro caso pode ser utilizado as view´s, depende do DB...

Sérgio


Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar