首頁 > 資料庫 > mysql教程 > 如何從 MySQL 的 GROUP_CONCAT() 函數中刪除重複項?

如何從 MySQL 的 GROUP_CONCAT() 函數中刪除重複項?

Susan Sarandon
發布: 2024-12-26 13:29:09
原創
765 人瀏覽過

How Can I Remove Duplicates from MySQL's GROUP_CONCAT() Function?

使用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
登入後複製
登入後複製
解決方案:解🎜 >要從GROUP_CONCAT() 結果中消除重複值,請使用DISTINCT屬性如下所示:DISTINCT 屬性確保連線字串中僅包含唯一值。 ORDER BY 子句用來依升序對值進行排序。結果是一個以逗號分隔的字串,只包含不同的類別:

以上是如何從 MySQL 的 GROUP_CONCAT() 函數中刪除重複項?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板