MySQL hat hauptsächlich zwei Arten von Joins, LEFT JOIN und RIGHT JOIN. Der Hauptunterschied zwischen diesen Joins ist die Einbeziehung von nicht übereinstimmenden Zeilen. Der LEFT JOIN umfasst alle Datensätze der linken Seite und die übereinstimmenden Zeilen der rechten Tabelle, während der RIGHT JOIN alle Zeilen der rechten Seite und die nicht übereinstimmenden Zeilen der linken Tabelle zurückgibt. In diesem Abschnitt werden wir die gängigen Unterschiede zwischen LEFT und RIGHT JOIN kennenlernen. Bevor wir uns mit dem Vergleich befassen, wollen wir zunächst die JOIN-, LEFT JOIN- und RIGHT JOIN-Klausel in MySQL verstehen.
Was ist eine JOIN-Klausel?
Ein Join wird verwendet, um Daten aus mehreren Tabellen abzufragen, und gibt das kombinierte Ergebnis aus zwei oder mehr Tabellen durch eine Bedingung zurück. Die Bedingung in der Join-Klausel gibt an, wie Spalten zwischen den angegebenen Tabellen abgeglichen werden.
Was ist die LEFT JOIN-Klausel?
Die Left Join-Klausel verbindet zwei oder mehr Tabellen und gibt alle Zeilen aus der linken Tabelle und die übereinstimmenden Datensätze aus der rechten Tabelle zurück oder gibt null zurück, wenn sie keinen übereinstimmenden Datensatz findet. Er ist auch als Left Outer Join bekannt. Outer ist also das optionale Schlüsselwort, das mit Left Join verwendet werden kann.
Wir können es mit der folgenden visuellen Darstellung verstehen:
Um mehr Informationen über den LEFT Join zu lesen, klicken Sie hier.
Was ist die RIGHT JOIN-Klausel?
Die Right Join-Klausel verbindet zwei oder mehr Tabellen und gibt alle Zeilen aus der rechten Tabelle und nur die Ergebnisse aus der anderen Tabelle zurück, die die angegebene Join-Bedingung erfüllen. Wenn sie nicht übereinstimmende Datensätze aus der linken Tabelle findet, gibt sie den Wert Null zurück. Er ist auch als Right Outer Join bekannt. Outer ist also die optionale Klausel, die mit Right Join verwendet wird.
Wir können es mit der folgenden visuellen Darstellung verstehen.
Um weitere Informationen über RIGHT JOIN zu lesen, klicken Sie hier.
Syntax der LEFT JOIN-Klausel
Das Folgende ist die allgemeine Syntax des LEFT JOIN:
Das Folgende ist die allgemeine Syntax des LEFT OUTER JOIN:
Syntax der RIGHT JOIN-Klausel
Nachfolgend ist die allgemeine Syntax von RIGHT JOIN:
Nachfolgend ist die allgemeine Syntax von RIGHT OUTER JOIN:
LEFT JOIN vs. RIGHT JOIN
Die folgende Vergleichstabelle erklärt die Hauptunterschiede in kurzer Form:
LEFT JOIN | RIGHT JOIN |
---|---|
Es verbindet zwei oder mehr Tabellen, gibt alle Datensätze aus der linken Tabelle und passende Zeilen aus der rechten Tabelle zurück. | Es wird verwendet, um zwei oder mehr Tabellen zu verbinden, gibt alle Datensätze aus der rechten Tabelle und übereinstimmende Zeilen aus der linken Tabelle zurück. |
Die Ergebnismenge enthält den Wert Null, wenn es keine übereinstimmende Zeile in der Tabelle auf der rechten Seite gibt. | Die Ergebnismenge enthält den Wert Null, wenn es keine übereinstimmende Zeile in der Tabelle auf der linken Seite gibt. |
Es wird auch als LEFT OUTER JOIN bezeichnet. | Es wird auch als RIGHT OUTER JOIN bezeichnet. |
Beispiel
Lassen Sie uns die Unterschiede zwischen beiden Joins anhand von Beispielen verstehen. Angenommen, wir haben eine Tabelle mit den Namen „Kunde“ und „Bestellungen“, die folgende Daten enthält:
Tabelle: Kunde
Tabelle: Bestellungen
LEFT JOIN Beispiel
Die folgende SQL-Anweisung gibt die übereinstimmenden Datensätze aus beiden Tabellen zurück, indem sie die LEFT JOIN-Abfrage verwendet:
Nach erfolgreicher Ausführung der Abfrage erhalten wir die folgende Ausgabe:
RIGHT JOIN Beispiel
Die folgende SQL-Anweisung gibt die übereinstimmenden Datensätze aus beiden Tabellen unter Verwendung der RIGHT JOIN-Abfrage zurück:
Nach erfolgreicher Ausführung der Abfrage erhalten wir die folgende Ausgabe: