SQL LEFT JOIN Schlüsselwort
Die LEFT JOIN Schlüsselwort gibt alle Zeilen aus der linken Tabelle (Tabelle 1), mit den passenden Zeilen in der rechten Tabelle (Tabelle 2). Das Ergebnis ist NULL auf der rechten Seite, wenn es keine Übereinstimmung gibt.
SQL LEFT JOIN Syntax
SELECT column_name(s)
FROM table1
LEFT JOIN table2
ON table1.column_name = table2.column_name ;
oder:
SELECT column_name(s)
FROM table1
LEFT OUTER JOIN table2
ON table1.column_name = table2.column_name ;
PS! In einigen LEFT JOIN wird Datenbanken LEFT OUTER JOIN genannt.
Demo-Datenbank
In diesem Tutorial werden wir die bekannte Beispieldatenbank verwenden.
Nachfolgend finden Sie eine Auswahl aus dem "Customers" Tabelle:
Kundennummer | Kundenname | Kontaktname | Adresse | Stadt | Postleitzahl | Land |
---|---|---|---|---|---|---|
1 |
Alfreds Futterkiste | Maria Anders | Obere Str. 57 | Berlin | 12209 | Germany |
2 | Ana Trujillo Emparedados y helados | Ana Trujillo | Avda. de la Constitucion 2222 | Mexico D.F. | 05021 | Mexico |
3 | Antonio Moreno Taqueria | Antonio Moreno | Mataderos 2312 | Mexico D.F. | 05023 | Mexico |
Und eine Auswahl aus der "Orders" Tabelle:
Auftragsnummer | Kundennummer | Angestellten ID | Auftragsdatum | ShipperID |
---|---|---|---|---|
10308 | 2 | 7 | 1996-09-18 | 3 |
10309 | 37 | 3 | 1996-09-19 | 1 |
10310 | 77 | 8 | 1996-09-20 | 2 |
SQL LEFT JOIN Beispiel
Die folgende SQL-Anweisung werden alle Kunden zurück sowie Aufträge könnten sie haben:
Beispiel
SELECT Customers.CustomerName, Orders.OrderID
FROM Customers
LEFT JOIN Orders
ON Customers.CustomerID=Orders.CustomerID
ORDER BY Customers.CustomerName;
Versuch es selber " Hinweis: Die LEFT JOIN Schlüsselwort die alle Zeilen aus der linken Tabelle zurückgibt (Kunden), auch wenn es keine Einträge in der rechten Tabelle (Aufträge).