Heim > Datenbank > MySQL-Tutorial > Wie kann ich LEFT JOINs verwenden, um Personen- und Angstdaten aus drei MySQL-Tabellen abzurufen?

Wie kann ich LEFT JOINs verwenden, um Personen- und Angstdaten aus drei MySQL-Tabellen abzurufen?

Linda Hamilton
Freigeben: 2024-12-24 19:53:10
Original
368 Leute haben es durchsucht

How Can I Use LEFT JOINs to Retrieve Person and Fear Data from Three MySQL Tables?

MySQL LEFT JOIN Drei Tabellen für ängstliche Personen

Um eine Liste von Personen mit den damit verbundenen Ängsten abzurufen, müssen Sie drei miteinander verbundene Tabellen nahtlos zusammenführen :

  • Personen: Enthält wesentliche Informationen über Einzelpersonen, wie z ihre PersonID, Name und SS (Sozialversicherungsnummer).
  • Ängste: Listet jeweils verschiedene Ängste auf ein Unikat zugewiesen FearID.
  • Person_Fear: Dient als Brücke zwischen Individuen und Ängsten, mit ID, PersonID und FearID.

Ändern Ihrer LEFT JOIN-Abfrage

Bei Ihrem ersten Versuch, einen LEFT JOIN zu erstellen, ist ein Problem aufgetreten. Die angegebene Join-Bedingung person_fear.personid = person_fear.fearid stimmt nicht mit der gewünschten Beziehung zwischen den Tabellen überein. Um die Tabelle Persons korrekt mit der Tabelle Fears über den Vermittler Person_Fear zu verknüpfen, verwenden Sie diesen geänderten Code:

SELECT Persons.Name, Persons.SS, Fears.Fear
FROM Persons
LEFT JOIN Person_Fear
    INNER JOIN Fears
    ON Person_Fear.FearID = Fears.FearID
ON Person_Fear.PersonID = Persons.PersonID
Nach dem Login kopieren

Erläuterung des Geänderten Query

  • LEFT JOIN ​​führt die Tabelle Persons mit der Tabelle Person_Fear zusammen, in der die PersonID wird mit der entsprechenden PersonID in abgeglichen Person_Fear. Dadurch wird sichergestellt, dass jede Person in die Ergebnisse einbezogen wird, auch wenn sie keine damit verbundenen Ängste hat.
  • Ein
  • INNER JOIN ​​verknüpft die Tabelle Person_Fear mit den Ängsten Tabelle basierend auf der Spalte FearID. Diese Operation ruft nur die Ängste ab, die über die Tabelle Person_Fear explizit mit Einzelpersonen verbunden sind.
  • Die
  • ON-Klauseln stellen sicher, dass die PersonID in der Die Personen-Tabelle entspricht der PersonID in der Person_Fear-Tabelle, die wiederum mit der FearID in der Fears-Tabelle übereinstimmt.

Alternative Abfragesyntax

Eine alternative Möglichkeit, die LEFT JOIN-Abfrage zu schreiben lautet:

SELECT Persons.Name, Persons.SS, Fears.Fear
FROM Persons
LEFT JOIN Person_Fear ON Person_Fear.PersonID = Persons.PersonID
LEFT JOIN Fears ON Person_Fear.FearID = Fears.FearID
Nach dem Login kopieren
Diese Syntax ist gleichermaßen effektiv beim Abrufen der gewünschten Daten, indem sie zwei LEFT JOINs verwendet, um die Tabellen zu verbinden.

Das obige ist der detaillierte Inhalt vonWie kann ich LEFT JOINs verwenden, um Personen- und Angstdaten aus drei MySQL-Tabellen abzurufen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage