yo,
Natuerlich KANN mir der LEFT JOIN mehr Datensatze liefern, wenn aber bei den join-Partnern alle "Assoziationen" zutreffen, dann sind die Ergebnismengen gleich.
so entwickelt man aber keine abfragen, sondern man sagt, was man haben will, unabhängig von dem ergebnis, was man bekommt.
Es gibt ja auch die INNER JOIN Klausel. MSSQL kann das schon lang, ist aber evtl. kein Standard, ich hab mir wegen ORACLEs alter join-Syntax halt die implizite Schreibweise des inner-joins angewohnt.
seit oracle 9i kann auch oracle den standard von expliziten joins und den sollte man sich auch angewöhnen, liest sich einfach viel besser.
Sollte man einen impliziten join schreiben, oder explizit mit inner join, oder is das nur Syntax und intern ohnehin das gleiche ...
mal von inner und outer join abgesehen, gibt es bei der ausführung keinen unterschied für das dbms. es geht dabei aber um lesbarkeit der abfragen.
Ums auf den Punkt zu bringen. Was mich stoert ist das Kreuzprodukt, das angeblich beim equi-join (implizit) immer berechnet wird.
es würde mich wundern, wenn bei einer impiziten schreibweise des inner joins ein anderer weg genommen wird als beim expliziten, wohl gemerkt, wenn beide inner joins sind.
Ilja