使用 ID 連接多個 SQL 表
在資料庫管理中,連接表是檢索和關聯來自多個資料來源的資料的關鍵操作。當處理相互關聯的資料集時,需要根據公共標識符合併表。
考慮以下場景:
您有四個名為 TableA、TableB、TableC 和 TableD 的不同表格。它們的結構如下:
<code>TableA - aID | nameA | dID TableB - bID | nameB | cID | aID TableC - cID | nameC | date TableD - dID | nameD</code>
從 TableA 開始,您旨在透過共用欄位「aID」與 TableB 執行連線。此外,您希望使用 TableB 作為中介來將 TableA 與 TableC 連線。以下 SQL 語句實現了這一點:
<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>
但是,當嘗試使用「dID」欄位將 TableD 併入查詢時,會遇到一個錯誤,指出「TableD」未知。
解決方案在於增加另一個連接語句。下面介紹了查詢的更正版本:
<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>
在這個修改後的查詢中,TableA 透過「dID」欄位直接連接到 TableD。這種方法成功地合併了所有四個表,允許您以連貫的方式從所有表中檢索資料。
以上是如何有效地連接四個具有共用 ID 的 SQL 表?的詳細內容。更多資訊請關注PHP中文網其他相關文章!