Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 12.0.1 (Deutsch) » SQL Anywhere Server - SQL-Benutzerhandbuch » Abfrage und Änderung von Daten » Joins: Daten aus mehreren Tabellen abrufen » Funktionsweise von Joins

 

Joins zwischen mehr als zwei Tabellen

In SQL Anywhere gibt es keine feste Obergrenze für die Anzahl der Tabellen, die verknüpft werden können.

Wenn Sie mehr als zwei Tabellen verknüpfen, ist die Verwendung von Klammern optional. Wenn Sie keine Klammern verwenden, wertet SQL Anywhere die Anweisung von links nach rechts aus. Daher ist A JOIN B JOIN C äquivalent mit ( A JOIN B ) JOIN C. Auch die beiden folgenden SELECT-Anweisungen sind gleichwertig:

SELECT *
FROM A JOIN B JOIN C JOIN D;
SELECT *
FROM ( ( A JOIN B ) JOIN C ) JOIN D;

Wenn mehr als zwei Tabellen verknüpft werden, umfasst der Join Tabellenausdrücke. Im Beispiel A JOIN B JOIN C wird der Tabellenausdruck A JOIN B mit C verknüpft. Das bedeutet, konzeptuell gesehen, dass A und B verknüpft werden und dann das Ergebnis mit C verknüpft wird.

Die Reihenfolge von Joins ist wichtig, wenn der Tabellenausdruck Outer-Joins enthält. A JOIN B LEFT OUTER JOIN C wird beispielsweise als (A JOIN B) LEFT OUTER JOIN C interpretiert. Das bedeutet, dass der Tabellenausdruck A JOIN B mit C verknüpft wird. Der Tabellenausdruck A JOIN B wird beibehalten und Tabelle C liefert auch NULL-Zeilen.

 Siehe auch