使用DISTINCT 消除GROUP_CONCAT() 中的重複項
在MySQL 中,GROUP_CONCAT() 是一個有用的函數,用於將多行中的值聚合到一個單一逗號分隔的字串。但是,當使用非唯一值時,結果字串中可能會出現重複項。為了解決這個問題,可以在 GROUP_CONCAT() 函數中使用 DISTINCT 性質。
問題:
考慮以下帶有「categories」欄位的範例資料表:
categories |
---|
test1 test2 test3 |
test4 |
test1 test3 |
test1 test3 |
執行下列 GROUP_CONCAT()時查詢:
SELECT GROUP_CONCAT(categories SEPARATOR ' ') FROM table
結果是:
test1 test2 test3 test4 test1 test3
但是,期望的結果是:
test1 test2 test3 test4
解決方案:
解決方案:SELECT GROUP_CONCAT(DISTINCT categories ORDER BY categories ASC SEPARATOR ' ') FROM table
test1 test2 test3 test4
以上是如何從 MySQL 的 GROUP_CONCAT() 函數中刪除重複項?的詳細內容。更多資訊請關注PHP中文網其他相關文章!