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

SQL Server:Was ist der Unterschied zwischen CROSS JOIN und FULL OUTER JOIN?

Ein Cross Join erzeugt ein kartesisches Produkt zwischen den beiden Tabellen und gibt alle möglichen Kombinationen aller Zeilen zurück. Es hat kein on Klausel, weil Sie einfach alles mit allem verbinden.

Ein full outer join ist eine Kombination aus left outer und right outer beitreten. Es gibt alle Zeilen in beiden Tabellen zurück, die mit dem where der Abfrage übereinstimmen -Klausel und in Fällen, in denen der on Bedingung kann für diese Zeilen nicht erfüllt werden, sie setzt null Werte für die nicht ausgefüllten Felder.

Dieser Wikipedia-Artikel erklärt die verschiedenen Arten von Joins mit Beispielen für die Ausgabe anhand eines Beispielsatzes von Tabellen.