group_concat_max_len设置过小致group_concat()排列不全
问题描述:group_concat_max_len默认值1024导致group_concat函数排列显示不足
group_concat_max_len长度显示跟group_concat排列长度息息相关,如果group_concat显示长度超过1024,突破默认值,会出现显示不全的问题
group_concat函数:
mysql> select * from sc; +-----------+-----+-------+ | Sno | Cno | Grade | +-----------+-----+-------+ | 201215121 | 1 | 92 | | 201215121 | 2 | 85 | | 201215121 | 3 | 88 | | 201215122 | 2 | 90 | | 201215122 | 3 | 80 | +-----------+-----+-------+ 5 rows in set (0.01 sec) --将Cno横排显示 mysql> select Sno,group_concat(Cno) from sc group by Sno; +-----------+-------------------+ | Sno | group_concat(Cno) | +-----------+-------------------+ | 201215121 | 1,2,3 | | 201215122 | 2,3 | +-----------+-------------------+ 2 rows in set (0.00 sec) --将Cno横排显示以';'分隔 mysql> select Sno,group_concat(Cno separator ';') from sc group by Sno; +-----------+---------------------------------+ | Sno | group_concat(Cno separator ';') | +-----------+---------------------------------+ | 201215121 | 1;2;3 | | 201215122 | 2;3 | +-----------+---------------------------------+ 2 rows in set (0.00 sec) --将Sno去重横排显示 mysql> select Sno,group_concat(distinct Sno) from sc group by Sno; +-----------+----------------------------+ | Sno | group_concat(distinct Sno) | +-----------+----------------------------+ | 201215121 | 201215121 | | 201215122 | 201215122 | +-----------+----------------------------+ 2 rows in set (0.00 sec)
官方文档关于group_concat介绍,可以使用distinct,desc,order by,asc,separator分割符
关于group_concat_max_len部分介绍,group_concat_max_len的默认值是1024Bit,可以设置的更大,但是最大值也受max_allowed_packet的影响
语法:
SET [GLOBAL | SESSION] group_concat_max_len = val;
mysql8.0可以直接持久化参数
mysql> show variables like '%group_concat%'; +----------------------+-------+ | Variable_name | Value | +----------------------+-------+ | group_concat_max_len | 1024 | +----------------------+-------+ 1 row in set (0.00 sec) mysql> mysql> select @@version; +-----------+ | @@version | +-----------+ | 8.0.29 | +-----------+ 1 row in set (0.00 sec) mysql> set persist group_concat_max_len=204800; Query OK, 0 rows affected (0.00 sec)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)