掌握MySQL LEFT JOIN:連接三個表
在MySQL 資料庫中使用多個表時,了解如何連接它們至關重要有效地。一個常見的挑戰是連結來自三個或更多表格的記錄。
考慮提供的範例:我們有三個表格 - Person、Fears 和 Person_Fear - 目標是顯示所有人員以及任何相關的恐懼(或沒有恐懼)。
不正確的 LEFT JOIN範例
提供的初始程式碼在 LEFT JOIN 條件中包含錯誤。該行:
ON person_fear.personid = person_fear.fearid
錯誤地將 Person_Fear.PersonID 連接到 Person_Fear.FearID,這是無意義的。
正確的LEFT JOIN 實作
正確連接表,我們需要修改條件to:
ON Person_Fear.PersonID = Persons.PersonID
這會將Person_Fear.PersonID 連結到Persons 表中的對應欄位。
替代LEFT JOIN 語法
另一種有效方法相同的LEFT JOIN 是使用以下語法:
LEFT JOIN Person_Fear ON Person_Fear.PersonID = Persons.PersonID LEFT JOIN Fears ON Person_Fear.FearID = Fears.FearID
此語法明確指定Persons 和Person_Fear 之間的LEFT JOIN,然後是Person_Fear 和Fears之間的另一個 LEFT JOIN。
結果查詢
使用任何一種更正的方法,查詢都會傳回Person 中的所有記錄表,甚至那些在Person_Fear 和Fears 表中沒有任何關聯恐懼的內容。對於每個人,它將顯示相關的恐懼,如果沒有與他們關聯的恐懼,它將顯示 NULL。
透過了解 LEFT JOIN 的正確使用,您可以有效地查詢多個資料表並檢索所需的結果用於 MySQL 資料庫中的複雜資料關係。
以上是如何在MySQL中正確左連接三個表?的詳細內容。更多資訊請關注PHP中文網其他相關文章!