Heim >Datenbank >MySQL-Tutorial >Wie führe ich Inner Joins für mehrere SQL-Tabellen korrekt durch?

Wie führe ich Inner Joins für mehrere SQL-Tabellen korrekt durch?

Barbara Streisand
Barbara StreisandOriginal
2024-12-27 19:23:16450Durchsuche

How to Correctly Perform Inner Joins on Multiple SQL Tables?

Innere Verknüpfung mehrerer Tabellen in SQL

Eine innere Verknüpfung ist eine SQL-Operation, die Zeilen aus mehreren Tabellen basierend auf einem gemeinsamen Spaltenwert kombiniert und nur die Zeilen zurückgibt, in denen die Bedingung ist erfüllt. Wenn Sie mit mehr als zwei Tabellen arbeiten, ist es wichtig, die Verknüpfungskriterien für jedes Tabellenpaar anzugeben.

In Ihrem angegebenen Code haben Sie versucht, drei Tabellen mit einem einzigen Fremdschlüssel und der folgenden Syntax innerlich zu verknüpfen :

SELECT * 
FROM table1 
INNER JOIN table2
INNER JOIN table3 
ON table1.primaryKey=table2.table1Id=table3.table1Id

Diese Abfrage gibt keine Ergebnisse zurück, da die Verknüpfungskriterien falsch sind. Um mehrere Tabellen korrekt zu verbinden, müssen Sie die Join-Bedingung für jedes Tabellenpaar separat angeben. Die korrekte Syntax für die innere Verknüpfung von drei Tabellen mit demselben Fremdschlüssel lautet:

SELECT * 
FROM table1 
INNER JOIN table2
      ON table1.primaryKey=table2.table1Id
INNER JOIN table3
      ON table1.primaryKey=table3.table1Id

In dieser korrigierten Abfrage werden die Verknüpfungskriterien für jedes Tabellenpaar (Tabelle1 und Tabelle2, Tabelle1 und Tabelle3) explizit angegeben, um sicherzustellen dass nur Zeilen mit übereinstimmenden Fremdschlüsselwerten aus allen drei Tabellen zurückgegeben werden.

Das obige ist der detaillierte Inhalt vonWie führe ich Inner Joins für mehrere SQL-Tabellen korrekt durch?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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