Tidb或mysql查询使用聚合函数group_concat()时数据不全的问题解决


原因:group_concat()聚合函数长度默认值一般是1024,导致数据长度超过这个长度时,后面的数据不显示

-- 查看当前数据库的group_concat()函数聚合后的长度
SHOW VARIABLES LIKE 'group_concat_max_len';

解决方法:

  • 修改group_concat_max_len的长度

方式一、临时修改:

-- 全局变量修改,如果是在MySQL中,mysql服务重启后就会失效。
set global group_concat_max_len = 102400;

-- 会话变量修改,修改后,变量值只在当前session 有效。
set session group_concat_max_len = 102400;

方式二、修改MySQL的配置文件,配置文件修改后,MySQL服务需要重启后才生效

  • 修改my.ini配置文件
    配置文件中没有参数 group_concat_max_len ,所以要手动加上,可以在配置文件最后加上以下配置。
group_concat_max_len = 102400

猜你喜欢

转载自blog.csdn.net/PineSummer/article/details/140772162