Sleutelwoord SQL LEFT JOIN
Sleutelwoord SQL LEFT JOIN
Het LEFT JOIN
sleutelwoord retourneert alle records uit de linkertabel (tabel1) en de overeenkomende records uit de rechtertabel (tabel2). Het resultaat is 0 records van de rechterkant, als er geen overeenkomst is.
LEFT JOIN-syntaxis
SELECT column_name(s)
FROM table1
LEFT JOIN table2
ON table1.column_name = table2.column_name;
Opmerking: In sommige databases wordt LEFT JOIN LEFT OUTER JOIN genoemd.
Demodatabase
In deze tutorial gebruiken we de bekende Northwind-voorbeelddatabase.
Hieronder vindt u een selectie uit de tabel "Klanten":
CustomerID | CustomerName | ContactName | Address | City | PostalCode | Country |
---|---|---|---|---|---|---|
1 |
Alfreds Futterkiste | Maria Anders | Obere Str. 57 | Berlin | 12209 | Germany |
2 | Ana Trujillo Emparedados y helados | Ana Trujillo | Avda. de la Constitución 2222 | México D.F. | 05021 | Mexico |
3 | Antonio Moreno Taquería | Antonio Moreno | Mataderos 2312 | México D.F. | 05023 | Mexico |
En een selectie uit de tabel "Bestellingen":
OrderID | CustomerID | EmployeeID | OrderDate | 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 Voorbeeld
De volgende SQL-instructie selecteert alle klanten en eventuele bestellingen:
Voorbeeld
SELECT Customers.CustomerName, Orders.OrderID
FROM Customers
LEFT JOIN Orders
ON Customers.CustomerID = Orders.CustomerID
ORDER BY Customers.CustomerName;
Opmerking: Het LEFT JOIN
trefwoord retourneert alle records uit de linkertabel (Klanten), zelfs als er geen overeenkomsten zijn in de rechtertabel (Bestellingen).