Welcome to Sign in | Help

Re: Cum fac aceasta interogare?

  •  05-02-2008, 6:08 PM

    Re: Cum fac aceasta interogare?

    rsocol:
    Da, se poate mai elegant:

    SELECT cont, denumire, sold_debitor, sold_creditor
    FROM plan_conturi p LEFT JOIN solduri_initiale s ON p.cont=s.cont AND s.an=2007

    Ideea e să pui condiţia "an=2007" în clauza ON, nu în clauza WHERE, pentru că dacă o pui în WHERE atunci e ca şi cum ar fi INNER JOIN (deoarece clauza WHERE e evaluată după join, iar NULL-urile nu satisfac condiţia).

    Răzvan


    Nu e acelasi lucru cu :

    SELECT cont, denumire, sold_debitor, sold_creditor
    FROM plan_conturi p LEFT JOIN
    ( select <ce coloane trebuie > from solduri_initiale  where an = 2007 )  s

    ON
    p.cont=s.cont

    Dpdbv estetic, nu imi place o clauza din join care nu are legatura cu amindoua tabelele de join ...



    Ignat Andrei
    http://serviciipeweb.ro/iafblog
View Complete Thread
Powered by Community Server (Commercial Edition), by Telligent Systems