VorwortWenn die Abfrageinformationen aus mehreren Tabellen stammen, müssen diese Tabellen für die Abfrage verknüpft werden. Join ist die gängigste Methode, um Datensätze aus verschiedenen Tabellen zu verbinden. Durch Join-Abfragen können mehrere Tabellen als eine Tabelle verarbeitet werden. Join-Abfragen werden in Inner Joins und Outer Joins unterteilt. 1. Querverbindungen herstellenEin Cross Join, auch „Kartesischer Join“ oder „Kreuzprodukt“ genannt, ist die Grundlage aller Arten von inneren Joins. Beispiel: Zur Implementierung der Routentabelle und der Fahrzeugtabelle lauten die Anweisungen wie folgt: `select * from line CROSS JOIN vehicle ist gleichbedeutend mit: select * from line, vehicle Zweitens innerer JoinDer Inner Join ist eine in Anwendungen sehr häufig verwendete Verbindungsoperation und im Allgemeinen der Standardverbindungstyp. Die Syntax lautet wie folgt: SELECT Feldliste FROM Tabelle1 【INNER】JOIN Tabelle2 ON Tabelle1.Spalte1=Tabelle2.Spalte2 【Wo-Bedingung】 3. Natürliche Verbindung Ein natürlicher Join ist ein spezieller innerer Join, der erfordert, dass die Basisspalten der beiden verbundenen Tabellen dieselben Felder sein müssen (mit denselben Feldnamen und denselben Feldattributen). wähle Feldliste aus Tabelle1 NATURAL JOIN Tabelle2 【Where-Bedingung】 4. Abfrage zum Verbinden mehrerer TabellenWenn die abzufragenden Informationen aus mehreren Tabellen stammen, kann eine Multi-Table-Join-Abfrage durch die Verbindung zweier Tabellen in umgekehrter Reihenfolge erstellt werden. Die Abfragesyntax für die Verknüpfung dreier Tabellen lautet wie folgt: SELECT Feldliste FROM Tabelle1 JOIN Tabelle2 ON tabke1.column1=table.column2_1 JOIN table3 auf Tabelle2.Spalte2_2 = Tabelle.Spalte3 【Wo-Bedingung】 Wenn man in der FROM-Klausel direkt alle zu verbindenden Tabellen auflistet und in der WHERE-Klausel dann die Verbindungsbedingungen angibt, handelt es sich um eine einfache Multi-Table-Abfrage, welche die gleiche Funktion wie ein Inner Join hat. Die Abfragesyntax zum Verbinden zweier Tabellen lautet wie folgt: SELECT Feldliste FROM Tabelle1, Tabelle2 HIER table1.column1=table2.column2 [und weitere Bedingungen] Fünf, äußere VerbindungBei einer Inner-Join-Abfrage werden in den Abfrageergebnissen nur Datensätze angezeigt, die die Join-Bedingungen erfüllen. Wenn jedoch bei der tatsächlichen Verwendung auch Datensätze in den Abfrageergebnissen erscheinen, die die Verbindungsbedingungen nicht erfüllen, ist eine äußere Verknüpfungsabfrage erforderlich. Äußere Verknüpfungen werden in linke und rechte äußere Verknüpfungen unterteilt. Die Syntax lautet wie folgt: `SELECT Feldname FROM Tabellenname 1 LEFT|RIGHT|FULL [OUTER] JOIN Tabellenname 2 ON Tabellenname 1. Feldname 1 = Tabellenname 2. Feldname 2` 1. Linker äußerer Join Der Ergebnissatz des äußeren Joins umfasst alle Datensätze in der linken Tabelle und die Datensätze in der rechten Tabelle, die die Join-Bedingungen erfüllen. Die Spaltenwerte aus der Tabelle, die die Join-Bedingungen im Ergebnissatz nicht erfüllen, sind nullo. 2. Rechter äußerer Join Ein rechter äußerer Join ist das Gegenteil eines linken äußeren Join. Der Ergebnissatz eines rechten äußeren Joins umfasst alle Datensätze der rechten Tabelle und die Datensätze der linken Tabelle, die die Join-Bedingung erfüllen. Die Spaltenwerte aus der linken Tabelle, die die Join-Bedingung nicht erfüllen, sind nullo. Betrieb: Notieren Sie sich von allen Fahrzeugen ohne Klimaanlage das Kennzeichen, das Modell und den Namen des Fahrers, die Routennummer der Route, zu der sie gehören, sowie Informationen zum Start- und zum Endbahnhof. WÄHLEN v.plateNO Kennzeichennummer, v.Modell Modell, d. NAME Name des Fahrers, l.lineNo Zeilennummer, l.from_station Startstation, l.end_station Endstation VON Linie l, Fahrzeug v, Treiber WO v.type = 'Auto ohne Klimaanlage' UND l.Zeilen-ID = v.Zeilen-ID UND d.TreiberID = v.TreiberID; Holen Sie sich alle Fahrerinformationen von Busunternehmen 2. Erfordert die Ausgabe von Name, Personalausweis, Geschlecht und Telefonnummer des Fahrers; WÄHLEN NAME Name des Fahrers, LizenzKEIN Personalausweis, d.Geschlecht, Telefon VON Fahrzeug v, Fahrer d, Linie l WO v.TreiberID = d.TreiberID UND v.lineID = l.lineID UND Unternehmen = 'Busunternehmen 2' GRUPPELN NACH Überprüfen Sie bei allen nicht klimatisierten Fahrzeugen das Kennzeichen, das Modell, die Liniennummer sowie den Start- und Zielbahnhof. WÄHLEN v.plateNO Kennzeichennummer, v.Modell Modell, l.lineNo Zeilennummer, l.from_station Startstation, l.end_station Endstation VON Linie l, Fahrzeug v WO v.type = 'Auto ohne Klimaanlage' UND l.lineID = v.lineID; Anzeige der Basisinformationen aller Routen und der ihnen zugewiesenen Fahrzeuge sowie Abfrage der relevanten Informationen der den Fahrzeugen zugewiesenen Fahrer. Ausgabe von Name, Geschlecht, Telefonnummer, Kennzeichen, Modell, Routennummer sowie Start- und Zielbahnhof des Fahrers erforderlich. WÄHLEN d.NAME Name des Fahrers, LizenzKEIN Personalausweis, d.Geschlecht, Telefon, v.plateNO Kennzeichennummer, v.Modell Modell, l.lineNo Zeilennummer, l.from_station Startstation, l.end_station Endstation VON Fahrzeug v, Fahrer d, Linie l WO v.TreiberID = d.TreiberID UND v.lineID = l.lineID GROUP BY Treibername; 6. Holen Sie sich die Bestelldetails der Bestell-ID 4 und geben Sie den Produktnamen, den Stückpreis und die Menge aus. WÄHLEN c.cName Kundenname, o.ordersDate Bestelldatum, g.goodsName Produktname, g.unitPrice Stückpreis, od.quantität Stückzahl AB Bestelldetails od, waren g, Bestellungen o, Kunde C WO c.cName = "Wang Chuanhua" UND c.customerID = o.customerID UND o.ordersID = od.ordersID UND od.WarenID = g.WarenID; Rufen Sie die Bestelldetails des Kunden „Wang Chuanhua“ ab. Dabei müssen der Kundenname, die Bestellnummer, das Bestelldatum, der Produktname, der Stückpreis und die Stückzahl angezeigt werden. WÄHLEN c.cName Kundenname, o.ordersDate Bestelldatum, g.goodsName Produktname, g.unitPrice Stückpreis, od.quantität Stückzahl AB Bestelldetails od, waren g, Bestellungen o, Kunde C WO c.cName = "Wang Chuanhua" UND c.customerID = o.customerID UND o.ordersID = od.ordersID UND od.WarenID = g.WarenID; Über den linken Link können Sie die Stammdaten und Bestelldaten aller Kunden abrufen, hierfür sind Kundenname, Telefonnummer, Bestell-ID und Bestellzeit anzugeben. WÄHLEN c.cName Kundenname, c.Telefon, o.ordersID Bestellnummer, o.ordersDate Bestellzeit VON Kunde C LEFT JOIN-Bestellungen o auf c.customerID=o.customerID; 8. Über den richtigen Link können Sie die Basisinformationen und Bestelldaten aller Kunden abrufen. Dabei sind der Kundenname, die Telefonnummer, die Bestell-ID und die Bestellzeit anzugeben. WÄHLEN c.cName Kundenname, c.Telefon, o.ordersID Bestellnummer, o.ordersDate Bestellzeit VON Bestellungen richtig JOIN Kunde c auf c.customerID=o.customerID; ZusammenfassenDies ist das Ende dieses Artikels über die MySQL-Verbindungsabfrage. Weitere relevante Inhalte zur MySQL-Verbindungsabfrage finden Sie in den vorherigen Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird! Das könnte Sie auch interessieren:
|
<<: Detaillierte Erklärung des Vue-Lebenszyklus
>>: Detaillierte Erklärung der grundlegenden Verwendung des Linux-Debuggers GDB
Klicken Sie hier, um zum Abschnitt „HTML-Tutorial“...
Hier können Sie durch geschickten Einsatz von CSS-...
Inhaltsverzeichnis So installieren und konfigurie...
In einigen Fällen müssen die Daten in den Daten w...
Linux-Grep-Befehl Mit dem Linux-Befehl grep könne...
Inhaltsverzeichnis MySQL Inner Join, Left Join, R...
Im Vorstellungsgespräch sollten Sie folgende Szen...
Ich glaube, jeder hat schon einmal Rubbellose ges...
1. Übergang Verwendung der Übergangseigenschaft: ...
Inhaltsverzeichnis Änderungen an der Rendering-AP...
In diesem Artikel wird der spezifische JavaScript...
Vorwort Ich bin davon überzeugt, dass bei der Ent...
Auf einem Linux-Computer gibt es zwei Zeitzonen: ...
Inhaltsverzeichnis 1 Probleme bei der Transaktion...