解决mysql中group_concat长度限制的方案
group_concat函数
在mysql中的group_concat函数默认支持的最大字符数为1024。
当你使用group_concat函数时,超出第1024字符的字符会全部丢失。
show variables like 'group_concat_max_len';
今天就被这个问题搞了一两个小时。不使用group by和group_concat时数据是正确的。
一用就发现使用了group_concat函数的列少了一些数据。
获得group_concat的最大长度
SELECT @@global.group_concat_max_len;或者show variables like "group_concat_max_len";
一看自己的mysql中group_concat的最大限制 发现等于1024
两种解决方案
使用sql设置group_concat的最大长度
SET GLOBAL group_concat_max_len=4294967295; SET SESSION group_concat_max_len=4294967295;
在MySQL配置文件中my.conf或my.ini中添加:
#[mysqld]group_concat_max_len=4294967295
然后重启mysql服务
service mysqld restart或者systemctl restart mysqld.service
再次点击查看就发现已经修改了
来源地址:https://blog.csdn.net/guo_qiangqiang/article/details/126528901