Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Verbinden mehrerer Tabellen in SQL

Beim Joinen mehrerer Tabellen bildet die Ausgabe jedes Joins logisch eine virtuelle Tabelle, die in den nächsten Join geht.

In dem Beispiel in Ihrer Frage würde also das zusammengesetzte Ergebnis der Verbindung der ersten 5 Tabellen als linke Tabelle behandelt.

Weitere Informationen hierzu finden Sie im Poster zur logischen Abfrageverarbeitung von Itzik Ben-Gan.

Die an den Joins beteiligten virtuellen Tabellen können durch die Positionierung des ON gesteuert werden Klausel. Zum Beispiel

SELECT *
FROM   T1
       INNER JOIN T2
         ON T2.C = T1.C
       INNER JOIN T3
                  LEFT JOIN T4
                    ON T4.C = T3.C
         ON T3.C = T2.C 

entspricht (T1 Inner Join T2) Inner Join (T3 Left Join T4)