Unterschied zwischen linker und linker äußerer Verbindung

Linke Join vs Linker Outer Join

In SQL werden Joins für die Kombination von Datensätzen aus unterschiedlichen Datensätzen verwendet. 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 aufweisen, im Gegensatz zu einem äußeren Join, der das Gegenteil des inneren ist. Der äußere Join gibt daher diejenigen Datensätze zurück, die in keiner der Tabellen Übereinstimmungen aufweisen. Die Unterschiede zwischen der rechten äußeren Verbindung und der linken äußeren Verbindung werden unten diskutiert.

Unterschiede

Wie bereits erwähnt, erzeugt ein innerer Join nur Datensätze, die in zwei verglichenen Tabellen vorhanden sind. Ein vollständiger äußerer Join ist andererseits einer, der den vollständigen Satz aller in den beiden verglichenen Tabellen darstellt. Für den Fall, dass keine Übereinstimmungen vorhanden sind, enthalten die fehlenden Übereinstimmungen eine Null.

Ein linker äußerer Join enthält einen vollständigen Satz von Datensätzen, die aus der ersten Tabelle stammen, und die übereinstimmenden Ergebnisse werden mit den Ergebnissen in der entsprechenden Tabelle verfügbar sein. Falls keine übereinstimmenden Ergebnisse vorhanden sind, enthält die rechte Seite eine Null. Um die Datensätze nur in der linken Tabelle und nicht in der richtigen Tabelle zu erstellen, kommt die Verwendung einer Where-Klausel ins Spiel.

Um eindeutige Datensätze für die rechte und die linke Tabelle zu erstellen, wird die Verwendung einer vollständigen äußeren Verknüpfung empfohlen. Nachdem der vollständige äußere Join ausgeführt wurde, wird eine "where" -Klausel verwendet, um Ergebnisse auszuschließen, die sowohl von der "rechten" als auch von der "linken" Seite unerwünscht sind. Darüber hinaus kann ein kartesischer Join verwendet werden, um Links und Rechts zu verbinden. Dies mag manchmal nicht das sein, wonach gesucht wird, sondern was manchmal erscheint. Die Joins erzeugen einen leistungsfähigen Datensatz, der bis zu 16 Reihen von Datensätzen ergibt, oft viel mehr als erwartet. Obwohl Sie eine riesige Menge an Datensätzen erhalten, sind diese Joins extrem gefährlich, da eine leichte Inkompatibilität das gesamte System lahmlegen kann.

Wenn Sie mit einem Projekt arbeiten, das ebenfalls die Kompatibilität des Microsoft SQL-Servers sucht, ergeben sich Vorteile aus der Verwendung des linken äußeren Joins. Die Rückgabesequenz beginnt damit, dass zuerst innere Datensätze zurückgegeben werden, gefolgt von rechten Verknüpfungsdatensätzen und schließlich eine Verknüpfung der linken Datensätze. Die Verwendung der linken Join-Anweisung oder der linken Outer-Join-Anweisung in der SQL-Umgebung bezieht sich auf genau die gleiche Anweisung. Dies bedeutet im Wesentlichen, dass es hinsichtlich des erwarteten Ergebnisses keinen Unterschied gibt, ob ein linker Join verwendet wird oder ein linker äußerer Join verwendet wird. Das Ergebnis wird ähnlich sein, es sei denn, die Umgebung befindet sich auf dem 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 Datenmengen zu vergleichen.

Ein innerer Join erzeugt nur Datensätze, die in zwei zu vergleichenden Tabellen vorhanden sind.

Ein äußerer Join erzeugt den vollständigen Satz von allen in den beiden zu untersuchenden Tabellen vorhandenen Datensätzen

Eine 'where' -Klausel zum Erzeugen eindeutiger Datensätze nach Verwendung eines vollständigen Joins

Ein kartesischer Join verknüpft die linken und rechten Elemente einer Tabelle.

Es gibt einen bemerkenswerten Unterschied zwischen linkem Join und linkem äußerem Join, der bei Verwendung von Microsoft SQL Server verwendet wird.

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