国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > MySQL > 正文

mysql如何實現多行查詢結果合并成一行

2024-07-24 13:05:15
字體:
來源:轉載
供稿:網友
利用函數: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;
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 新营市| 盐边县| 德清县| 黄浦区| 卢氏县| 昌图县| 巴林左旗| 镇宁| 高安市| 镇雄县| 桃园市| 杨浦区| 闵行区| 枞阳县| 盐城市| 滕州市| 广东省| 苏尼特左旗| 万年县| 城口县| 寿宁县| 耒阳市| 依兰县| 梁平县| 阿拉尔市| 金山区| 淮南市| 远安县| 盈江县| 昌江| 迁西县| 鸡东县| 辽宁省| 宁海县| 来安县| 龙陵县| 阳城县| 益阳市| 定陶县| 南宁市| 武城县|