用逗號分隔值連接兩個表
問題:
我們有兩個表:註釋和立場。 Notes 資料表包含一個名為「forDepts」的資料列,用於儲存以逗號分隔的部門 ID。我們需要連接這些表,並將「forDepts」值與 Positions 表中對應的部門名稱相關聯。
所需輸出:
nid | DepartmentName |
---|---|
1 | Executive, Corp Admin, Art |
2 | Art, Marketing |
解:
由於資料庫結構無法修改,所以我們將使用以下SQL查詢以獲得所需的輸出:
SELECT a.nid, GROUP_CONCAT(b.name ORDER BY b.id) DepartmentName FROM Notes a INNER JOIN Positions b ON FIND_IN_SET(b.id, a.forDepts) > 0 GROUP BY a.nid
解釋:
透過執行此查詢,我們可以獲得所需的輸出,其中 Notes 表中的 'forDepts' 列值被替換為相應的以逗號分隔的部門名稱從職位表中。這將有助於使用提供的 PHP 程式碼將資料匯出到 Excel 檔案。
以上是如何在 SQL 中連接具有逗號分隔值的表?的詳細內容。更多資訊請關注PHP中文網其他相關文章!