mysql如何實現多行查詢結果合并成一行
來源:懂視網
責編:小采
時間:2020-11-09 21:05:24
mysql如何實現多行查詢結果合并成一行
mysql如何實現多行查詢結果合并成一行:利用函數:group_concat(),實現一個ID對應多個名稱時,原本為多行數據,把名稱合并成一行。 其完整語法: GROUP_CONCAT(expr) 該函數返回帶有來自一個組的連接的非NULL值的字符串結果。其完整的語法如下所示: GROUP_CONCAT([DISTINCT]
導讀mysql如何實現多行查詢結果合并成一行:利用函數:group_concat(),實現一個ID對應多個名稱時,原本為多行數據,把名稱合并成一行。 其完整語法: GROUP_CONCAT(expr) 該函數返回帶有來自一個組的連接的非NULL值的字符串結果。其完整的語法如下所示: GROUP_CONCAT([DISTINCT]

利用函數:group_concat(),實現一個ID對應多個名稱時,原本為多行數據,把名稱合并成一行。
其完整語法:
GROUP_CONCAT(expr)
該函數返回帶有來自一個組的連接的非NULL值的字符串結果。其完整的語法如下所示:
GROUP_CONCAT([DISTINCT] expr [,expr ...]
[ORDER BY {unsigned_integer | col_name | expr}
[ASC | DESC] [,col_name ...]]
[SEPARATOR str_val])
mysql> SELECT student_name,
-> GROUP_CONCAT(test_score)
-> FROM student
-> GROUP BY student_name;
Or:
mysql> SELECT student_name,
-> GROUP_CONCAT(DISTINCT test_score
-> ORDER BY test_score DESC SEPARATOR ' ')
-> FROM student
-> GROUP BY student_name;
在MySQL中,你可以獲取表達式組合的連接值。你可以使用DISTINCT刪去重復值。假若你希望多結果值進行排序,則應該使用 ORDER BY子句。若要按相反順序排列,將 DESC (遞減) 關鍵詞添加到你要用ORDER BY 子句進行排序的列名稱中。默認順序為升序;可使用ASC將其明確指定。 SEPARATOR 后面跟隨應該被插入結果的值中間的字符串值。默認為逗號 (‘,')。通過指定SEPARATOR '' ,你可以刪除所有分隔符。
使用group_concat_max_len系統變量,你可以設置允許的最大長度。 程序中進行這項操作的語法如下,其中 val 是一個無符號整數:
SET [SESSION | GLOBAL] group_concat_max_len = val;
您可能感興趣的文章:
MySql采用GROUP_CONCAT合并多條數據顯示的方法mysql如何將多行數據合并成一行mysql利用group_concat()合并多行數據到一行關于mysql合并表的詳細介紹mysql中合并兩個字段的方法分享mysql合并多條記錄的單個字段去一條記錄編輯mysql group_concat()函數用法總結MySQL統計函數GROUP_CONCAT使用陷阱分析mysql的group_concat函數使用示例MySQL中group_concat函數深入理解Mysql的GROUP_CONCAT()函數使用方法mysql實現合并同一ID對應多條數據的方法
聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com
mysql如何實現多行查詢結果合并成一行
mysql如何實現多行查詢結果合并成一行:利用函數:group_concat(),實現一個ID對應多個名稱時,原本為多行數據,把名稱合并成一行。 其完整語法: GROUP_CONCAT(expr) 該函數返回帶有來自一個組的連接的非NULL值的字符串結果。其完整的語法如下所示: GROUP_CONCAT([DISTINCT]