SQL-Spalte
Zusammenfassung der Grundkenntnisse der SQL-Datenbank
Zusammenfassung der fortgeschrittenen Kenntnisse der SQL-Datenbank
Die Rolle der
JOIN-Verbindung Die JOIN-Verbindung wird verwendet, um Zeilen aus zwei oder mehr Tabellen basierend auf den gemeinsamen Feldern zwischen diesen Tabellen zu kombinieren.
Die häufigste Art von JOIN: INNER JOIN (einfaches JOIN). INNER JOIN gibt alle Zeilen aus mehreren Tabellen zurück, die die JOIN-Bedingungen erfüllen.
Beispieldatenbank
Schauen wir uns die Daten an, die aus der Tabelle "Bestellungen" ausgewählt wurden:
Schauen Sie sich dann die Daten an, die aus der Tabelle "Kunden" ausgewählt wurden:
Beachten Sie, dass die Spalte "Kunden-ID" in der Tabelle "Bestellungen" auf die Kunden-ID in der Tabelle "Kunden" verweist. Die beiden oben genannten Tabellen sind über die Spalte "Kunden-ID" verbunden.
JOIN-Instanz
Wir möchten wissen, wer jede Bestellnummer und die spezifische Bestellzeit bestellt hat. Wir führen die folgende SQL-Anweisung aus (einschließlich INNER JOIN):
SELECT o.订单ID, c.姓名, o.订单日期
FROM Orders o
INNER JOIN Customers c
ON o.客户ID=c.客户ID;
Die Ergebnisse der Operation sind wie folgt:
Verschiedene JOINs
Bevor wir die Beispiele weiter erläutern, listen wir zunächst die verschiedenen SQL JOIN-Typen auf, die Sie verwenden können:
-
INNER JOIN: Wenn die Tabelle mindestens eine Übereinstimmung enthält, geben Sie die Zeilen zurück
-
LEFT JOIN: Auch wenn in der rechten Tabelle keine Übereinstimmung vorhanden ist, werden alle Zeilen aus der linken Tabelle zurückgegeben
-
RIGHT JOIN: Auch wenn in der linken Tabelle keine Übereinstimmung vorhanden ist, werden alle Zeilen aus der rechten Tabelle zurückgegeben
- FULL JOIN: Solange in einer der Tabellen eine Übereinstimmung vorliegt, wird die Zeile zurückgegeben
INNER JOIN
Das Schlüsselwort INNER JOIN für den internen Link wählt die Datensätze mit übereinstimmenden Werten in den beiden Tabellen aus.
SQL INNER JOIN 语法
SELECT Spaltenname (n) FROM Tabelle1
INNER JOIN Tabelle2 ON
Tabelle1.Spaltenname = Tabelle2.Spaltenname;
Hinweis: INNER JOIN und JOIN sind identisch. Das obige Beispiel lautet INNER JOIN
LEFT JOIN
SQL linkes Link LEFT JOIN-Schlüsselwort gibt alle Zeilen in der linken Tabelle (Tabelle 1) zurück, auch wenn in der rechten Tabelle keine Übereinstimmung vorhanden ist (Tabelle 2). Wenn die richtige Tabelle nicht übereinstimmt, ist das Ergebnis NULL.
SQL LEFT JOIN 语法
SELECT Spaltenname (n)
FROM Tabelle1
LEFT JOIN Tabelle2
ON table1.column_name = table2.column_name;
oder:
SELECT Spaltenname (n)
FROM Tabelle1
LEFT OUTER JOIN Tabelle2
ON Tabelle1.Spaltenname = Tabelle2.Spaltenname;
Hinweis: In einigen Datenbanken wird LEFT JOIN als LEFT OUTER JOIN bezeichnet.
Beispiel für LEFT JOIN
Wenn alle Benutzer in der Tabelle "Kunden" Bestellungen aufgegeben haben, können wir die folgende Abfragesprache verwenden:
SELECT c.姓名,o.订单ID, o.订单日期
FROM Customers c
LEFT JOIN Orders o
ON o.客户ID=c.客户ID;
Ergebnis:
Wir haben festgestellt, dass Liu Er, Li Si und Zhao Qi keine entsprechenden Bestell-IDs und Bestelldaten hatten, da diese nicht in der Bestellungstabelle vorhanden waren und nicht mit ihren Informationen übereinstimmten. Da es sich jedoch um eine Linksverbindung handelt, werden alle Informationen der Haupttabelle Kunden angezeigt, die der Tabelle 1 in der obigen Abbildung entsprechen.
RICHTIG BEITRETEN
Das Schlüsselwort RIGHT JOIN für den rechten SQL-Link gibt alle Zeilen der rechten Tabelle (Tabelle2) zurück, auch wenn die linke Tabelle (Tabelle1) nicht übereinstimmt. Wenn die linke Tabelle nicht übereinstimmt, ist das Ergebnis NULL.
SQL RIGHT JOIN 语法
SELECT Spaltenname (n) FROM Tabelle1
RIGHT JOIN Tabelle2 ON
table1.column_name = table2.column_name;
Hinweis: In einigen Datenbanken wird RIGHT JOIN als RIGHT OUTER JOIN bezeichnet.
Die Haupttabelle der rechten und der linken Verbindung ist genau umgekehrt, und die Daten in Tabelle2 werden vollständig angezeigt. Wenn in Tabelle1 keine Übereinstimmung vorliegt, werden sie nicht angezeigt.
FULL OUTER JOIN
Wenn die Tabellendatensätze links (Tabelle 1) oder rechts (Tabelle 2) übereinstimmen, gibt das Schlüsselwort FULL OUTER JOIN alle Datensätze zurück.
Hinweis: FULL OUTER JOIN kann eine sehr große Ergebnismenge zurückgeben!
SQL FULL OUTER JOIN 语法
SELECT Spaltenname (n) FROM Tabelle1
FULL OUTER JOIN Tabelle2 ON
table1.column_name = table2.column_name;
Bei vollständiger Verbindung wird der Inhalt von Tabelle1 und Tabelle2 vollständig angezeigt, unabhängig davon, ob eine Übereinstimmung vorliegt oder nicht.
Anmerkung
JOIN nimmt in SQL eine wichtige Position ein. Durch JOIN können wir zwei oder mehr Tabellen mit übereinstimmenden Beziehungen verknüpfen, um die gewünschten Daten zu erhalten. Die Art der Assoziation ist auch flexibler. Die häufig verwendete Art ist INNER JOIN. Bitte beherrschen Sie sie.