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!