Unterschied zwischen Left Join und Left Outer Join

Left Join gegen Left Outer Join

In SQL werden Joins für die Kombination von Datensätzen verwendet, die aus unterschiedlichen Datensätzen stammen. Die Verknüpfung kann entweder eine innere Verknüpfung oder eine äußere Verknüpfung sein. Ein innerer Join gibt Datensätze zurück, die Übereinstimmungen in beiden Tabellen haben, im Gegensatz zu einem äußeren Join, der dem inneren entspricht. Der äußere Join gibt daher die Datensätze zurück, für die in keiner Tabelle Übereinstimmungen vorhanden sind. Unterschiede zwischen der rechten äußeren Verbindung und der linken äußeren Verbindung werden im Folgenden beschrieben.

Unterschiede

Wie bereits erwähnt, erzeugt ein innerer Join nur einen Datensatz, der in zwei verglichenen Tabellen vorhanden ist. Ein vollständiger Outer-Join dagegen ist derjenige, der den vollständigen Satz aller Datensätze in beiden vergleichenden Tabellen erzeugt. Falls keine Übereinstimmungen vorhanden sind, enthalten die fehlenden Übereinstimmungen eine Null.

Ein linker Outer-Join enthält einen vollständigen Satz von Datensätzen, die aus der ersten Tabelle stammen, und die übereinstimmenden Ergebnisse sind mit ihren Ergebnissen in der entsprechenden Tabelle verfügbar. Falls keine übereinstimmenden Ergebnisse vorliegen, enthält die rechte Seite eine Null. Um nur die Datensätze in der linken Tabelle und nicht in der rechten Tabelle zu erzeugen, verwenden Sie eine "where" -Klausel.

Um eindeutige Datensätze für die Tabelle rechts und für die Tabelle links zu erstellen, wird die Verwendung eines vollständigen äußeren Joins empfohlen. Nachdem der vollständige Outer-Join ausgeführt wurde, wird eine „Wo“ -Klausel verwendet, um unerwünschte Ergebnisse von der „rechten“ und „linken“ Seite auszuschließen. Darüber hinaus kann ein kartesischer Join verwendet werden, um alles links und rechts zu verbinden. Dies kann manchmal nicht das sein, wonach gesucht wird, aber es erscheint manchmal das, was erscheint. Die Joins erzeugen einen leistungsstarken Datensatz, der bis zu 16 Datensätzezeilen enthält, oft viel mehr als erwartet. Obwohl Sie eine riesige Menge an Datensätzen erhalten, sind diese Verknüpfungen äußerst gefährlich, da eine leichte Inkompatibilität das gesamte System beeinträchtigen kann.

Wenn Sie sich mit einem Projekt befassen, das auch die Kompatibilität des Microsoft SQL-Servers anstrebt, ergeben sich Vorteile, die sich aus der Verwendung des Left Outer Join ergeben. Die Rückkehrsequenz beginnt damit, dass zuerst die inneren Datensätze zurückgegeben werden, gefolgt von Datensätzen der rechten Verknüpfung und schließlich einer Verknüpfung der linken Datensätze. Die Verwendung der Left Join- oder Left Outer Join-Anweisung in der SQL-Umgebung bezieht sich auf genau dieselbe Anweisung. Dies bedeutet im Wesentlichen, dass es keinen Unterschied bezüglich des erwarteten Ergebnisses gibt, ob ein Left Join oder ein Left Outer Join verwendet wird. Das Ergebnis ist ähnlich, es sei denn, die Umgebung befindet sich im Microsoft SQL-Server. Das äußere Schlüsselwort kann ohne Sorge verwendet oder sogar weggelassen werden, da sich die Ergebnisse in keiner Weise unterscheiden.

Zusammenfassung

Joins werden in SQL verwendet, um verschiedene Datensätze zu vergleichen

Ein innerer Join erzeugt nur einen Datensatz, der in zwei verglichenen Tabellen vorhanden ist

Eine äußere Verknüpfung erzeugt den vollständigen Satz aller Datensätze, die in beiden untersuchten Tabellen vorhanden sind

Eine Where-Klausel, die verwendet wird, um eindeutige Datensätze nach Verwendung eines vollständigen Joins zu erzeugen

Ein kartesischer Join verknüpft linke und rechte Elemente einer Tabelle.

Es gibt einen bemerkenswerten Unterschied, wo Left Join und Left Outer Join bei Verwendung von Microsoft SQL Server verwendet werden

Alles in allem bezieht sich die Verwendung der linken Join- oder Left Outer Join-Anweisung auf genau dieselbe Anweisung. Da es keinen Unterschied gibt, wird die Verwendung der linken äußeren Verbindung empfohlen.