[firebase-br] Sql de Tabela relacionada com ela mesma

Jimi Roy Pugss jimi_roy em dew.com.br
Ter Mar 15 19:38:55 -03 2005


Coloque ALIAS para as 2 tabelas

SELECT A.NOME_EMPREGADO
,      B.NOME_EMPREGADO AS NOME_CHEFIA
FROM   EMPREGADO A
INNER  JOIN EMPREGADO B
ON> B.MATRICULA_CHEFIA = EMPREGADO2.MATRICULA_EMPREGADO


> Bom dia a todos da lista.
>
> Gostaria de saber porque a query abaixo não retorna os valores
> corretos. A query é composta de apenas uma tabela chamando ela mesmo
> relacionada pela chave matricula_empregado = matricula_chefia
>
> SELECT
> EMPREGADO.NOME_EMPREGADO
> , EMPREGADO2.NOME_EMPREGADO AS NOME_CHEFIA,
> FROM
> EMPREGADO INNER JOIN EMPREGADO EMPREGADO2 ON
> EMPREGADO.MATRICULA_CHEFIA = EMPREGADO2.MATRICULA_EMPREGADO
>
>
> Já fiz alguns testes e olha os resultados:
>
>> INNER JOIN: retorna apenas UM registro com todos os campos com valor
>> NULL
>
>> RIGHT OUTER JOIN: retorna TODOS os registros da tabela sendo que no
>> campo AS NOME_CHEFIA repete o valor do campo NOME_EMPREGADO
>
>> LEFT OUTER JOIN: retorna TODOS os registros da tabela com todos os
>> campos com valor NULL
>
>> FULL OUTER JOIN: retorna TODOS os registros da tabela sendo que no campo
>> AS NOME_CHEFIA repete o valor do campo NOME_EMPREGADO
>
> Esta situação é típica de SABER QUAL É O NOME DO CHEFE DE UM EMPREGADO
> (O CHEFE TAMBEM É UM EMPREGADO)
>
> A versão do firebird que estou usando é : WI-V6.2.972 Firebird 1.0.3
>
> Não sei o que fazer. E necessito disso.
>
> Se tiver alguma sugestão!
>
> Obrigado, João Luiz
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
> Para editar sua configuração na lista, use o endereço
> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
>





Mais detalhes sobre a lista de discussão lista