mysql的group_concat函数查询结果默认长度1024,超过这个长度的结果将不显示,使用的时候可能会丢失数据的问题:
比如总行数1000行,只要每一行的字符数达到2以上,则group_concat拿到的数据就会丢失部分,只保留前1024个字符
解决方法一:
在mysql的配置文件“my.ini”或“my.conf”加上以下语句,然后重启mysql服务即可:
group_concat_max_len=102400
如果这个值设为-1,表示为最大值(4294967295)
解决方法二:
执行以下sql语句:
SET GLOBAL group_concat_max_len=102400;
SET SESSION group_concat_max_len=102400;
(不推荐,由于数据库重启后长度会从新变回1024)