在Mysql中使用group_concat做文本拼接时,遇到返回的结果不完整,查了一下发现此函数默认的长度仅有1024(字节)
查看当前设置的长度:
show variables like "group_concat_max_len";
配置的方式有两种,不过推荐两种方法同时使用,如果只有方法一那在重启后此配置会失效变回系统默认的1024,方法二则是永久生效但是需要重启MySQL服务,所以推荐两个方法同时使用,既保证了当前有效,也保证了如有重启服务也不会受影响
方法一:执行下列语句立即生效
SET GLOBAL group_concat_max_len = 102400;
SET SESSION group_concat_max_len = 102400;
方法二:linux 修改/etc/my.cnf 文件 win 修改对应的my.ini 文件
[mysqld]
group_concat_max_len = 102400
#当设置为 -1时,则表示最大值即MySQL支持group_concat_max_len 的最大值为4294967295 (2^32 - 1)