Verbinden Sie mehrere SQL-Tabellen mithilfe der ID
In der Datenbankverwaltung ist das Zusammenführen von Tabellen ein wichtiger Vorgang beim Abrufen und Korrelieren von Daten aus mehreren Datenquellen. Bei der Arbeit mit miteinander verbundenen Datensätzen müssen Tabellen auf der Grundlage gemeinsamer Bezeichner zusammengeführt werden.
Stellen Sie sich das folgende Szenario vor:
Sie haben vier verschiedene Tabellen mit den Namen TableA, TableB, TableC und TableD. Ihre Struktur ist wie folgt:
<code>TableA - aID | nameA | dID TableB - bID | nameB | cID | aID TableC - cID | nameC | date TableD - dID | nameD</code>
Ausgehend von TabelleA möchten Sie über die gemeinsame Spalte „aID“ einen Join mit TabelleB durchführen. Darüber hinaus möchten Sie TableA mit TableC verbinden und dabei TableB als Vermittler verwenden. Dies wird durch die folgende SQL-Anweisung erreicht:
<code>SELECT TableA.*, TableB.*, TableC.* FROM (TableB INNER JOIN TableA ON TableB.aID= TableA.aID) INNER JOIN TableC ON(TableB.cID= Tablec.cID) WHERE (DATE(TableC.date)=date(now()))</code>
Beim Versuch, TableD mithilfe der Spalte „dID“ in eine Abfrage einzubinden, erhalte ich jedoch eine Fehlermeldung, die besagt, dass „TableD“ unbekannt ist.
Die Lösung liegt im Hinzufügen einer weiteren Join-Anweisung. Eine korrigierte Version der Abfrage wird unten dargestellt:
<code>SELECT TableA.*, TableB.*, TableC.*, TableD.* FROM TableA JOIN TableB ON TableB.aID = TableA.aID JOIN TableC ON TableC.cID = TableB.cID JOIN TableD ON TableD.dID = TableA.dID WHERE DATE(TableC.date)=date(now())</code>
In dieser modifizierten Abfrage ist TableA über die Spalte „dID“ direkt mit TableD verbunden. Bei diesem Ansatz werden alle vier Tabellen erfolgreich zusammengeführt, sodass Sie Daten aus allen Tabellen auf kohärente Weise abrufen können.
Das obige ist der detaillierte Inhalt vonWie kann man vier SQL-Tabellen mit gemeinsam genutzten IDs effizient verknüpfen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!