Heim >Datenbank >MySQL-Tutorial >Wie verbinde ich mehrere Tabellen in MySQL, um verwandte Daten abzurufen?
Tabellen in MySQL verbinden
In MySQL können wir durch das Verbinden von Tabellen Daten aus mehreren Tabellen basierend auf gemeinsam genutzten Spalten kombinieren. In dieser Frage wollen wir drei Tabellen verknüpfen, um spezifische Informationen abzurufen.
Studenten-, Kurs- und Brückentabellen verbinden
Die angegebenen Daten umfassen drei Tabellen: Student ( enthält Studentennamen), Kurs (enthält Kursnamen) und Bridge (verbindet Studenten-IDs mit Kurs-IDs). Um das gewünschte Ergebnis abzurufen (Auflistung der Studentennamen mit den Namen der besuchten Kurse), müssen Sie einen Inner Join mit ANSI-Syntax verwenden:
SELECT s.name AS Student, c.name AS Course FROM student s INNER JOIN bridge b ON s.id = b.sid INNER JOIN course c ON b.cid = c.id ORDER BY s.name;
Diese Abfrage liefert das erwartete Ergebnis und zeigt den Namen jedes Studenten und die von ihm belegten Kurse an haben studiert.
Beitritt zu Mitarbeiter- und Verwaltungstabellen
Für den zweiten Teil der Frage haben wir zwei Tabellen: Mitarbeiter (enthält Mitarbeiternamen) und Verwalten (verbindet Manager-IDs mit Mitarbeiter-IDs). Um das gewünschte Ergebnis (Auflisten von Managern und ihren Mitarbeitern) abzurufen, müssen Sie erneut einen Inner Join verwenden:
SELECT e1.name AS Manager, e2.name AS Staff FROM employee e1 INNER JOIN manage m ON e1.id = m.mid INNER JOIN employee e2 ON m.eid = e2.id;
Diese Abfrage liefert das erwartete Ergebnis und zeigt den Namen jedes Managers und die Namen seiner Mitarbeiter an.
Das obige ist der detaillierte Inhalt vonWie verbinde ich mehrere Tabellen in MySQL, um verwandte Daten abzurufen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!