使用 SQL Inner JOIN 連接多個表
使用關聯式資料庫時,通常需要組合多個表中的資料。為此,SQL 提供了 INNER JOIN 運算子。
要在兩個表上執行內聯接,您需要指定它們的主鍵和外鍵之間的相等條件。例如:
SELECT * FROM table1 INNER JOIN table2 ON table1.primaryKey = table2.table1Id;
此查詢將傳回兩個表中具有符合主鍵和外鍵的所有行。
要將其擴展到多個表,只需向查詢,使用相同的外鍵/主鍵相等條件。但是,以下程式碼沒有回傳任何結果:
SELECT * FROM table1 INNER JOIN table2 INNER JOIN table3 ON table1.primaryKey = table2.table1Id = table3.table1Id;
這樣做的原因是必須為每個表單獨指定相等條件。正確的語法是:
SELECT * FROM table1 INNER JOIN table2 ON table1.primaryKey = table2.table1Id INNER JOIN table3 ON table1.primaryKey = table3.table1Id;
此查詢將傳回 table1 中在 table2 和 table3 中具有匹配主鍵和外鍵的所有行。
以上是為什麼我的 SQL INNER JOIN 與多個表不回傳任何結果?的詳細內容。更多資訊請關注PHP中文網其他相關文章!