group_concat函数有长度限制
查找当前数据库长度
show variables like 'group_concat_max_len'
设置当前session的group_concat长度,其他session连接不受影响
SET SESSION group_concat_max_len = 10240;
设置全局group_concat长度
SET GLOBAL group_concat_max_len = 10240
[Err] 1227 - Access denied; you need (at least one of) the SUPER privilege(s) for this operation
当前mysql用户不允许,请联系DBA。
DBA可能告诉你,长度太长了,性能差,还可能挂。
还是切开来逐条读吧。
后续 19.07.31
与DBA协商改GLOBAL变量值,不知道什么时候被改了回来,DBA说:这是测试库,改了会影响所有用户,不能改了。好吧想别的办法。
由于业务代码不在手中,需求难提,只能写session变量修改代码交给RD说:看,这样写就好了,帮我加一行这个。
(为啥提需求的要写代码呢?因为RD方推脱说我不会,百度也找不到。。
而且看起来好像确实不了解MySQL的变量。)
stmt = conn.createStatement(); // 当前的JDBC连接
stmt.execute("set session group_concat_max_len = 150000");