[firebase-br] Fw: SQL/Consulta complexa - Firebird 2.1

Douglas Silva forum_firebird em daunebr.com
Qua Mar 10 09:01:51 -03 2010





----- Forwarded Message ----
From: Douglas Silva <forum_firebird em daunebr.com>
To: FireBase <lista em firebase.com.br>
Sent: Wed, March 10, 2010 8:58:56 AM
Subject: Re: [firebase-br] SQL/Consulta complexa - Firebird 2.1


Alguma coisa deve estar errada. Mas vamos tentar novamente:

A tabela principal eh INSTRUTORES. Portanto vc quer todos os instrutores com o seu telefone e email. Correto?

Vc fez isto:
SELECT
>>    INSTRUTORES.ID_INSTRUTOR,
>>    INSTRUTORES.INSTRUTOR,
>>    EMAILS.EMAIL,
>>    TELEFONES.TELEFONE
>> FROM TELEFONES
>>   INNER JOIN INSTRUTORES ON (TELEFONES.ID_INSTRUTOR =
>> INSTRUTORES.ID_INSTRUTOR)
>>   INNER JOIN EMAILS ON (INSTRUTORES.ID_INSTRUTOR = EMAILS.ID_INSTRUTOR)

eu faria assim:

SELECT I.ID_INSTRUTOR,I.INSTRUTOR,E.EMAIL,T.TELEFONE
FROM INSTRUTORES I
    LEFT JOIN EMAILS E ON E.ID_INSTRUTOR=I.ID_INSTRUTOR
    LEFT JOIN TELEFONES T ON T.ID_INSTRUTOR=I.ID_INSTRUTOR.

Pode botar fé que funciona.


Mais detalhes sobre a lista de discussão lista