Select sobre Select com Delphi 7 e Firebird
Olá pessoal,
estou com um problema/dúvida e gostaria da sugestão de vc....
Tenho uma tabela chamada PessoaFisica e ao fazer uma consulta sobre a tabela de todos os nomes que começam com a letra A faço assim:
Realizando essa consulta tenho todas as pessoas que tenham seu nome iniciando com a letra A. :shock:
Agora gostaria de fazer uma nova consulta sobre os resultados da primeira consulta..... :wink: me desculpem se não fui claro.
Seria algo como:
Me desculpem se não fui claro.....
Uso Delphi 7.0 -- Firebird 1.5 -- Componente de acesso IBX.
estou com um problema/dúvida e gostaria da sugestão de vc....
Tenho uma tabela chamada PessoaFisica e ao fazer uma consulta sobre a tabela de todos os nomes que começam com a letra A faço assim:
SELECT * FROM PESSOAFISICA WHERE NOME LIKE ´A¬´ ORDER BY NOME
Realizando essa consulta tenho todas as pessoas que tenham seu nome iniciando com a letra A. :shock:
Agora gostaria de fazer uma nova consulta sobre os resultados da primeira consulta..... :wink: me desculpem se não fui claro.
Seria algo como:
SELECT * RESULTADO_DO_SELECT_ACIMA WHERE CEP BETWEEN :CEP_INICIAL AND :CEP_FINAL ORDER BY CEP, NOME
Me desculpem se não fui claro.....
Uso Delphi 7.0 -- Firebird 1.5 -- Componente de acesso IBX.
[b:00fef69393][color=blue:00fef69393]Tópico foi movido por Vinicius2K:[/color:00fef69393][/b:00fef69393]
[list:00fef69393][b:00fef69393][color=red:00fef69393][*:00fef69393]Fórum original: Delphi[/color:00fef69393][/b:00fef69393][/list:u:00fef69393]
Carlosib
Curtidas 0
Respostas
Ricknetbr
16/10/2005
SELECT * FROM SUATABELA
WHERE [b:5ebc0d0be0]CODIGO[/b:5ebc0d0be0] [b:5ebc0d0be0]IN[/b:5ebc0d0be0]
( SELECT [b:5ebc0d0be0]CODIGO[/b:5ebc0d0be0] FROM TABELA
WHERE UPPER(NOME) LIKE ´A¬´)
[]s
WHERE [b:5ebc0d0be0]CODIGO[/b:5ebc0d0be0] [b:5ebc0d0be0]IN[/b:5ebc0d0be0]
( SELECT [b:5ebc0d0be0]CODIGO[/b:5ebc0d0be0] FROM TABELA
WHERE UPPER(NOME) LIKE ´A¬´)
[]s
GOSTEI 0
Carlosib
16/10/2005
Me desculpe.....mas acho que não fui claro na explanação de minha dúvida:
Por exemplo, tenho uma tabela de pessoas físicas e o usuário de início resolver pegar todoas as pessoas que façam aniversário no dia 10 não importando o mês nem o ano. No SQL abaixo teria esse result set:
Gostaria de fazer um SELECT em cima do result set acima. Para dar ao usuário, por exemplo, a opção de filtrar ainda mais a consulta, como, por exemplo pegar todas os aniversariantes do dia 10 que residam no estado de SP.
Sei que com um único SELECT eu resolveria essa consulta acima.... mas não é apenas isso que desejo.... quero ir adiante.... quero permitir que o usuário possa pesquiar nos resultados.
Por exemplo, tenho uma tabela de pessoas físicas e o usuário de início resolver pegar todoas as pessoas que façam aniversário no dia 10 não importando o mês nem o ano. No SQL abaixo teria esse result set:
SELECT * FROM PESSOA_FISICA WHERE EXTRACT(DAY FROM DATA_NASCIMENTO) = 10 ORDER BY NOME
Gostaria de fazer um SELECT em cima do result set acima. Para dar ao usuário, por exemplo, a opção de filtrar ainda mais a consulta, como, por exemplo pegar todas os aniversariantes do dia 10 que residam no estado de SP.
SELECT * FROM RESULT_SET_ACIMA FROM ESTADO = ´SP´ ORDER BY NOME
Sei que com um único SELECT eu resolveria essa consulta acima.... mas não é apenas isso que desejo.... quero ir adiante.... quero permitir que o usuário possa pesquiar nos resultados.
GOSTEI 0
Bon Jovi
16/10/2005
Firebird não suporta. Essa funcionalidade, exatamente como está dizendo, parece que está prevista somente pra versão 2.0. Na versao atual só mesmo partindo pra alternativas.. como criação de view..
GOSTEI 0
Carlosib
16/10/2005
Muito obrigado amigo....partirei para a criação de view.
Ficaria pessado.... a cada select * from pessoa_ficica where condiação eu excluir a view atual e criar uma nova?
Ficaria pessado.... a cada select * from pessoa_ficica where condiação eu excluir a view atual e criar uma nova?
GOSTEI 0