使用逗號分隔值查詢多個連接欄位
在SQL 中,處理包含逗號分隔清單(CSV) 的表時在他們的領域,有效地執行連接可能具有挑戰性。本文探討了一種特定場景,其中電影表中的類別列包含多個類別 ID,目標是在從類別表中獲取相應類別名稱時將其完全排除。
下表說明了該場景:
Table categories: -id- -name- 1 Action 2 Comedy 4 Drama 5 Dance Table movies: -id- -categories- 1 2,4 2 1,4 4 3,5
為了執行所需的連接,我們可以將 find_in_set() 函數與 group_concat() 操作結合使用。查詢如下:
select m.id, group_concat(c.name) from movies m join categories c on find_in_set(c.id, m.categories) group by m.id
查詢說明:
結果輸出以陣列格式顯示影片 ID 及其對應的類別名稱。這樣可以輕鬆存取相關類別,而無需解碼電影表中的 CSV。
以上是如何在 SQL 中連接具有逗號分隔值欄位的表?的詳細內容。更多資訊請關注PHP中文網其他相關文章!