Fasst bei Verwendung in einer FROM-Klausel Datensätze aus einer Quelltabelle zusammen.
Syntax
FROM Tabelle1 [ LEFT | RIGHT ] JOIN Table2
ON Table1.Field1Compopr Table2.field2
Die LEFT JOIN- und RIGHT JOIN-Operationen bestehen aus den folgenden Teilen:
| Teil | Beschreibung |
|---|---|
| Tabelle1, Tabelle2 | Die Namen der Tabellen, aus denen Datensätze zusammengefasst werden. |
| Feld1, Feld2 | Die Namen der verknüpften Felder. Die Felder müssen denselben Datentyp aufweisen und dieselbe Art von Daten enthalten, aber sie müssen nicht denselben Namen haben. |
| Vergleichsoperator | Beliebiger relationaler Vergleichsoperator: "=", "<," ">," "<=", "=", oder> "<>." |
Hinweise
Verwenden Sie einen LEFT JOIN-Vorgang, um einen linken äußeren Join zu erstellen. Linke äußere Joins enthalten alle Datensätze aus der ersten (linken) der beiden Tabellen, selbst wenn es in der zweiten Tabelle (rechts) keine übereinstimmenden Werte für Datensätze gibt.
Verwenden Sie einen RIGHT JOIN-Vorgang, um eine rechte äußere Verknüpfung zu erstellen. Rechte äußere Joins enthalten alle Datensätze aus der zweiten (rechten) der beiden Tabellen, selbst wenn es in der ersten Tabelle (links) keine übereinstimmenden Werte für Datensätze gibt.
Beispielsweise können Sie LEFT JOIN mit den Tabellen "Abteilungen" (links) und "Mitarbeiter" (rechts) verwenden, um alle Abteilungen auszuwählen, einschließlich der Abteilungen, denen keine Mitarbeiter zugewiesen sind. Um alle Mitarbeiter (einschließlich derjenigen, die keiner Abteilung zugewiesen sind) auszuwählen, verwenden Sie RIGHT JOIN.
Das folgende Beispiel zeigt, wie Sie die Tabellen "Categories" und "Products" im Feld "CategoryID" verknüpfen können. Die Abfrage erzeugt eine Liste aller Kategorien, einschließlich derjenigen, die keine Produkte enthalten:
SELECT CategoryName, ProductName FROM Categories LEFT JOIN Products ON Categories.CategoryID = Products.CategoryID;
In diesem Beispiel ist "CategoryID" das verknüpfte Feld, wird aber nicht in die Abfrageergebnisse einbezogen, da es nicht in der SELECT-Anweisung enthalten ist. Um das verknüpfte Feld einzuschließen, geben Sie den Feldnamen in die SELECT-Anweisung ein, Categories.CategoryIDin diesem Fall .
Wenn Sie eine Abfrage erstellen möchten, die nur Datensätze enthält, bei denen die Daten in den verknüpften Feldern identisch sind, verwenden Sie eine INNER JOIN-Operation.
- Eine LEFT JOIN- oder RIGHT JOIN-Operation kann in einer INNER JOIN-Operation geschachtelt werden, wohingegen eine INNER JOIN-Operation nicht in einer LEFT JOIN- oder RIGHT JOIN-Operation geschachtelt werden kann. Im Thema "INNER JOIN-Operation" erfahren Sie, wie Joins in anderen Joins geschachtelt werden.
- Sie können mehrere ON-Klauseln verknüpfen. Im Thema "INNER JOIN-Operation" wird erläutert, wie das Verknüpfen von Klauseln funktioniert.
Wenn Sie versuchen, Felder mit Memo- oder OLE-Objektdaten zu verknüpfen, tritt ein Fehler auf.