SQL JOIN-Schlüsselwort
❮ Referenz zu SQL-Schlüsselwörtern
INNERE VERBINDUNG
Der INNER JOIN
Befehl gibt Zeilen mit übereinstimmenden Werten in beiden Tabellen zurück.
Das folgende SQL wählt alle Bestellungen mit Kundeninformationen aus:
Beispiel
SELECT Orders.OrderID, Customers.CustomerName
FROM Orders
INNER JOIN
Customers ON Orders.CustomerID = Customers.CustomerID;
Hinweis: Das Schlüsselwort INNER JOIN wählt alle Zeilen aus beiden Tabellen aus, solange es eine Übereinstimmung zwischen den Spalten gibt. Wenn es Datensätze in der Tabelle „Bestellungen“ gibt, die keine Übereinstimmungen in „Kunden“ haben, werden diese Bestellungen nicht angezeigt!
Die folgende SQL-Anweisung wählt alle Bestellungen mit Kunden- und Versenderinformationen aus:
Beispiel
SELECT Orders.OrderID, Customers.CustomerName, Shippers.ShipperName
FROM
((Orders
INNER JOIN Customers ON Orders.CustomerID = Customers.CustomerID)
INNER JOIN Shippers ON Orders.ShipperID = Shippers.ShipperID);
LINKS VERBINDEN
Der LEFT JOIN
Befehl gibt alle Zeilen aus der linken Tabelle und die übereinstimmenden Zeilen aus der rechten Tabelle zurück. Das Ergebnis ist NULL von der rechten Seite, wenn es keine Übereinstimmung gibt.
Die folgende SQL wählt alle Kunden und alle Bestellungen aus, die sie möglicherweise haben:
Beispiel
SELECT Customers.CustomerName, Orders.OrderID
FROM Customers
LEFT JOIN Orders
ON Customers.CustomerID = Orders.CustomerID
ORDER BY Customers.CustomerName;
Hinweis: Das LEFT JOIN
Schlüsselwort gibt alle Datensätze aus der linken Tabelle (Kunden) zurück, auch wenn es keine Übereinstimmungen in der rechten Tabelle (Bestellungen) gibt.
RECHTS VERBINDEN
Der RIGHT JOIN
Befehl gibt alle Zeilen aus der rechten Tabelle und die übereinstimmenden Datensätze aus der linken Tabelle zurück. Das Ergebnis ist NULL von der linken Seite, wenn es keine Übereinstimmung gibt.
Die folgende SQL gibt alle Mitarbeiter und alle Bestellungen zurück, die sie möglicherweise aufgegeben haben:
Beispiel
SELECT Orders.OrderID, Employees.LastName, Employees.FirstName
FROM Orders
RIGHT JOIN Employees ON Orders.EmployeeID = Employees.EmployeeID
ORDER BY Orders.OrderID;
Hinweis: Das RIGHT JOIN
Schlüsselwort gibt alle Datensätze aus der rechten Tabelle (Mitarbeiter) zurück, auch wenn es keine Übereinstimmungen in der linken Tabelle (Aufträge) gibt.
VOLLSTÄNDIGE ÄUSSERE VERBINDUNG
Der FULL OUTER JOIN
Befehl gibt alle Zeilen zurück, wenn es eine Übereinstimmung in der linken oder rechten Tabelle gibt.
Die folgende SQL-Anweisung wählt alle Kunden und alle Bestellungen aus:
SELECT Customers.CustomerName, Orders.OrderID
FROM Customers
FULL OUTER JOIN Orders
ON Customers.CustomerID=Orders.CustomerID
ORDER BY Customers.CustomerName;
Hinweis: Das FULL OUTER JOIN
Schlüsselwort gibt alle Zeilen aus der linken Tabelle (Kunden) und alle Zeilen aus der rechten Tabelle (Bestellungen) zurück. Wenn es Zeilen in „Kunden“ gibt, die keine Übereinstimmungen in „Bestellungen“ haben, oder wenn es Zeilen in „Bestellungen“ gibt, die keine Übereinstimmungen in „Kunden“ haben, werden diese Zeilen ebenfalls aufgelistet.
❮ Referenz zu SQL-Schlüsselwörtern