mysql中group_concat长度限制的问题

2023-10-09 08:19:26 浏览数 (2)

在mysql中的group_concat函数默认支持的最大字符数为1024。 当你使用group_concat函数时,超出第1024字符的字符会全部丢失。

今天就被这个问题搞了一两个小时。不使用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

解决方法: 1.使用sql设置group_concat的最大长度

代码语言:javascript复制
SET GLOBAL group_concat_max_len=102400; 
SET SESSION group_concat_max_len=102400; 

但是这种方式在重启mysql后就无效。

2.在MySQL配置文件中my.conf或my.ini中添加: #[mysqld] group_concat_max_len=102400 然后重启mysql服务

0 人点赞