[firebase-br] Consulta complexa

Flavio Pereira flavio em c2sistemas.com.br
Qui Abr 12 13:49:03 -03 2012


e se voce usar um select distinct não daria certo não>.?

Em 12 de abril de 2012 10:26, Fabiano Martins <fabiano em clippnet.com.br>escreveu:

> Creio que faltou vc colocar na where o filtro para o campo w.data_ato
>
> ------------------------------**--------------------
> From: "Hélio Oliveira" <hpensador em gmail.com>
>
> Sent: Wednesday, April 11, 2012 10:14 AM
> To: <lista em firebase.com.br>
> Subject: [firebase-br] Consulta complexa
>
>
>  Bom dia Colegas!
>>
>> Tenho duas tabelas (FUNCIONARIO e FUNCIONARIO_SIGA) com uma relação de 1
>> x N ou seja, um Funcionário pode ter um ou n-registros na tabela
>> FUNCIONARIO_SIGA. Acontece que ao fazer o select:
>>
>> select distinct
>>       x.matricula,
>>       x.nome,
>>       x.data_admissao,
>>       w.numero_ato,
>>       w.data_ato,
>>       w.tipo_ato
>> from FUNCIONARIO x
>>  join FUNCIONARIO_SIGA w on (w.matricula = x.matricula)
>> where extract(month from x.data_admissao) = :mes
>>  and extract(year from x.data_admissao)  = :ano
>>
>> Se coloco mes = 1 e ano = 1995 deveria ser retornado apenas 2 registros,
>> já que só há 2 funcionários admitidos no mês 1/1995, porém esta consulta me
>> retorna 6 registros devido a cada um dos funcionários ter na tabela
>> FUNCIONARIO_SIGA 3 registros cada.
>>
>> Há alguma forma de ser contornado isto, fazendo com que a referida
>> consulta só me retorne os 2 registros?
>>
>> --
>> []'s,
>>
>> Hélio Oliveira
>> Analista de Sistemas
>> Delphi Developer
>> http://hpensador.blogspot.com/
>>
>>
>> ______________________________**________________
>> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
>> Para saber como gerenciar/excluir seu cadastro na lista, use:
>> http://www.firebase.com.br/fb/**artigo.php?id=1107<http://www.firebase.com.br/fb/artigo.php?id=1107>
>> Para consultar mensagens antigas: http://firebase.com.br/**pesquisa<http://firebase.com.br/pesquisa>
>>
>
>
> ______________________________**________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use:
> http://www.firebase.com.br/fb/**artigo.php?id=1107<http://www.firebase.com.br/fb/artigo.php?id=1107>
> Para consultar mensagens antigas: http://firebase.com.br/**pesquisa<http://firebase.com.br/pesquisa>
>



Mais detalhes sobre a lista de discussão lista