Vinzenz Mai: abfrage von zwei tabellen & ersetzen

Beitrag lesen

Hallo Ilja

Keinen, das Ergebnis sollte gleich sein.

nein, ist es nicht. es kann user geben, die keinen comment gemacht haben. je nachdem ob er diese mit im boot haben will oder nicht muss man über einen outer join oder inner gehen. aber das ergebnis eines inner und outer kann durchaus unterschiedlich sein.

Selbstverständlich kann das Ergebnis eines INNER JOIN und des OUTER JOIN unterschiedlich sein (und ist es in vielen Fällen).

Ich bezog mich in meiner Antwort auf die Frage von dedlfix auf den angebrachten

  
comments LEFT OUTER JOIN users  

Dieser sollte gemäß meiner Argumentation, dass jeder Kommentar einen Benutzer haben sollte, der diesen Kommentar verfasst hat, das gleiche Ergebnis liefern wie

  
users INNER JOIN comments  

Dem Ausgangsposter ging es explizit um die Ausgabe von Kommentaren inklusive Benutzernamen, nicht um die Benutzer und die Kommentare, die sie gegebenenfalls verfaßt haben.

Für den letzten Fall ist es auf jeden Fall anzunehmen, dass es Benutzer gibt, die noch keinen Kommentar verfaßt haben. Somit sollte, wie Du richtig angemerkt hast, der LEFT OUTER JOIN eine andere (größere) Ergebnismenge liefern als der INNER JOIN.

Freundliche Grüße

Vinzenz

PS: Ja, ich hatte vielleicht zuviel gekürzt, zuwenig zitiert :-)