Verwendung des Venn-Diagramms zur Veranschaulichung von SQL-Verbindungstypen
Das Venn-Diagramm ist eine effektive visuelle Darstellung von SQL-Verbindungen und hilft Benutzern zu verstehen, wie Daten aus verschiedenen Tabellen kombiniert werden. Hier ist eine Zusammenfassung der verschiedenen Verbindungstypen, dargestellt anhand eines modifizierten Venn-Diagramms:
Im Uhrzeigersinn von der oberen rechten Ecke:
1. Innere Verbindung (Kreis B ist rot, überlappende Teile sind grün gefärbt)
-
Zweck: Nur Zeilen zurückgeben, in denen eine Übereinstimmung zwischen den beiden Tabellen besteht.
-
SQL-Anweisung: SELECT A.Color, B.Color FROM A INNER JOIN B ON A.Color = B.Color
-
Erklärung: Die SQL-Anweisung priorisiert Tabelle B und platziert sie vor der „ON“-Klausel, aber die resultierenden Zeilen konzentrieren sich auf die Daten, die von den beiden Tabellen gemeinsam genutzt werden.
2. Innere Verbindung (enthält nur B-Kreise, überlappende Teile sind grün gefärbt)
-
Zweck: Nur Zeilen in Kreis B zurückgeben, die mit einer beliebigen Zeile in Kreis A verbunden sind (in diesem Fall gibt es keine).
-
SQL-Anweisung: SELECT A.Color, B.Color FROM A INNER JOIN B ON A.Color NOT IN ('Green','Blue')
-
Erklärung: Die Join-Bedingung schließt bestimmte Werte aus den A-Kreisen aus, wodurch die resultierenden Zeilen effektiv auf die B-Kreise beschränkt werden.
3. Querverbindung (alle Daten enthalten)
-
Zweck: Kombinieren Sie jede Zeile im Kreis A mit jeder Zeile im Kreis B, unabhängig davon, ob es Überlappung oder Übereinstimmung gibt.
-
SQL-Anweisung: SELECT A.Color, B.Color FROM A CROSS JOIN B
-
Erklärung: Die resultierende Anzahl von Zeilen ist das Produkt der Anzahl von Zeilen in jeder Tabelle (in diesem Fall 4x4 = 16).
4. Linke äußere Verbindung (einschließlich A-Kreis, überlappende Teile grün gefärbt)
-
Zweck: Enthält alle Zeilen in Kreis A (unabhängig von Überlappung oder nicht) und verbindet übereinstimmende Zeilen in Kreis B.
-
SQL-Anweisung: SELECT A.Color, B.Color FROM A LEFT OUTER JOIN B ON A.Color = B.Color
-
Anweisungen: Behalten Sie alle nicht übereinstimmenden Zeilen in Kreis A und verwenden Sie NULL-Werte in den Spalten von Kreis B.
5. Linke äußere Verbindung (ohne Kreis A, überlappende Teile sind grün gefärbt)
-
Zweck: Ähnlich wie die vorherige Verknüpfung, schließt jedoch nur Zeilen in Kreis A ein, die nicht mit Zeilen in Kreis B verbunden sind.
-
SQL-Anweisung: SELECT A.Color, B.Color FROM A LEFT OUTER JOIN B ON A.Color = B.Color WHERE B.Color IS NULL
-
Anleitung: Isolieren Sie die nicht übereinstimmenden Zeilen im A-Kreis und erzeugen Sie in diesem Fall separate rote Zeilen.
6. Rechte äußere Verbindung (einschließlich B-Kreis, der überlappende Teil ist grün gefärbt)
-
Zweck: Ähnlich einem Left Outer Join, behält jedoch nicht übereinstimmende Zeilen in Kreis B bei und verwendet NULL-Werte in den Spalten von Kreis A.
-
SQL-Anweisung: SELECT A.Color, B.Color FROM A RIGHT OUTER JOIN B ON A.Color = B.Color
-
Hinweis: In diesem Beispiel sind nur die blauen Zeilen in Kreis B enthalten, da es in Kreis A keine Übereinstimmungen gibt.
7. Vollständiger äußerer Join (alle Daten enthalten)
-
Zweck: Kombinieren Sie alle Zeilen in Kreis A und Kreis B, behalten Sie die nicht übereinstimmenden Zeilen bei und füllen Sie die Spalten in den nicht übereinstimmenden Zeilen mit NULL-Werten.
-
SQL-Anweisung: SELECT A.Color, B.Color FROM A FULL OUTER JOIN B ON A.Color = B.Color
-
Hinweis: Die Ergebniszeile enthält zwei Kreise und nicht übereinstimmende Zeilen werden mit NULL-Werten erweitert.
Das obige ist der detaillierte Inhalt vonWie veranschaulichen Venn-Diagramme verschiedene Arten von SQL-Joins?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!
Stellungnahme:Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn