Hauptunterschied: Joins in SQL werden ausgeführt, um die Daten von zwei verschiedenen Tabellen zu kombinieren. Ein Inner Join ist eine Bedingung, die zu den Zeilen führt, die die "wo" -Klausel in "allen Tabellen" erfüllen. Ein äußerer Join ist eine Bedingung, die dazu führt, dass die Zeilen die „wo“ -Klausel in „mindestens einer der Tabellen“ erfüllen.
Beim Implementieren der Joins werden die temporären Tabellen erstellt, die auf Spalten basieren. Für die Join-Bedingungen sollten immer zwei Tabellen vorhanden sein. Diese Bedingungen führen dann die jeweiligen Komponenten einer Tabelle mit den anderen Komponenten zusammen und führen zu einer völlig neuen Tabelle. Ziel dieser Tabellen ist es, die aussagekräftigen und erforderlichen Daten oder Informationen zu extrahieren. Abhängig von den Bedingungen gibt es zwei Arten von Verbindungen, die innere und äußere Verbindung.
![](http://spot-the-difference.info/img/popular-comparisons/263/difference-between-inner-join.jpg)
SQL INNER JOIN-Syntax:
SELECT Spaltenname (n)
FROM table1
INNER JOIN table2
ON table1.column_name = table2.column_name;
Das Schlüsselwort INNER JOIN wählt alle Zeilen aus beiden Tabellen aus, solange die Spalten in beiden Tabellen übereinstimmen.
Die inneren Verknüpfungen hängen von der Auswahl der Datenbankentwürfe und -merkmale ab. Dementsprechend werden diese inneren Verbindungen in den Equi-Verbindungen und natürlichen Verbindungen verwendet. Im Equi Join gibt es eine bestimmte Art von Vergleich, mit der die beiden angegebenen Tabellen abgeglichen werden. Daher verwendet diese Tabelle das Gleichheits-Prädikat. Der natürliche Join ist eine Art Equi-Join.
![](http://spot-the-difference.info/img/popular-comparisons/263/difference-between-inner-join-2.jpg)
Die Syntax für Equi Join lautet wie folgt:
S ELECT *
FROM table1, table 2
WHERE table1.coloumn_name = table2.coloumn_name;
Wenn die Spalten in einem Equi-Join denselben Namen haben, stellt die jeweilige SQL-Version eine optionale Kurzschreibweise bereit, die vom USING-Konstrukt folgendermaßen ausgedrückt werden kann:
WÄHLEN *
FROM table1 INNER JOIN table2 USING (Spaltenname);
Die Syntax für Natural Join lautet wie folgt:
WÄHLEN *
FROM table1 NATURAL JOIN table2;
Für einen "äußeren Join" sind keine Übereinstimmungsbedingungen für die Datensätze erforderlich. Diese Join-Bedingung speichert alle anderen Datensätze außer den nicht übereinstimmenden Datensätzen. Dieser Join wird weiter in Left-, Right- und Full-Outer-Join-Bedingungen verteilt, die entsprechend den gewünschten Tabellenbedingungen und -attributen implementiert werden.
![](http://spot-the-difference.info/img/popular-comparisons/263/difference-between-inner-join-3.jpg)
Linke äußere Verbindung
Das Schlüsselwort LEFT JOIN gibt alle Zeilen aus der linken Tabelle (table1) zurück, wobei die übereinstimmenden Zeilen in der rechten Tabelle (table2) enthalten sind. Es ergibt auf der rechten Seite "NULL", wenn es keine Übereinstimmung gibt.
Die Syntax für Left Outer Join lautet:
SELECT Spaltenname (n)
FROM table1
LINKS OUTER JOIN table2
ON table1.column_name = table2.column_name;
![](http://spot-the-difference.info/img/popular-comparisons/263/difference-between-inner-join-4.jpg)
Rechter äußerer Join
Das Schlüsselwort RIGHT JOIN gibt alle Zeilen aus der rechten Tabelle (table2) mit den übereinstimmenden Zeilen in der linken Tabelle (table1) zurück. Das Ergebnis ist NULL auf der linken Seite, wenn keine Übereinstimmung vorliegt.
Die Syntax für Right Outer Join lautet:
SELECT Spaltenname (n)
FROM table1
RECHTE AUSSEN VERBINDEN table2
ON table1.column_name = table2.column_name;
![](http://spot-the-difference.info/img/popular-comparisons/263/difference-between-inner-join-5.jpg)
Volle äußere Verbindung
Das Schlüsselwort FULL OUTER JOIN gibt alle Zeilen aus der linken Tabelle (table1) und der rechten Tabelle (table2) zurück. Das Schlüsselwort FULL OUTER JOIN kombiniert das Ergebnis von LEFT- und RIGHT-Joins.
Die Syntax für Full Outer Join lautet:
SELECT Spaltenname (n)
FROM table1
FULL OUTER JOIN table2
ON table1.column_name = table2.column_name;
Vergleich zwischen Inner Join und Outer Join:
Inner Join | Äußeres Join | |
Grundfunktion | Inner Joins werden grundsätzlich dazu verwendet, übereinstimmende Zeilen zwischen zwei Tabellen zu finden. | Bei der äußeren Verknüpfung werden die Zeilen einer Tabelle oder beider Tabellen beibehalten. |
Vorhandensein gemeinsamer Variablen | Hier muss die Common Variable zwingend in beiden Tabellen stehen. | Hier ist die Variable nur von der ersten Tabelle abhängig, die in der zweiten Tabelle vorhanden sein kann oder nicht. |
Kehrt zurück | Inner Join gibt nur Zeilen zurück, in denen es eine Übereinstimmung gibt, die auf dem Join-Prädikat basiert. | Bei der äußeren Verknüpfung werden alle Zeilen zurückgegeben, unabhängig davon, ob sie auf dem Join-Vergleichselement übereinstimmen oder nicht. |
Gewöhnt an | Es wird verwendet, um die Datensätze nur anzuzeigen, wenn die Datensätze in beiden Tabellen vorhanden sind. | Es wird verwendet, um alle Datensätze in nur einer Tabelle anzuzeigen. |
Anwendbar in | Sie sind anwendbar in: Equi-Join und Natürlich beitreten | Sie gelten als: Linke äußere Verbindung Rechter äußerer Join Volle äußere Verbindung |