之前使用了 group_concat 函数,没想到后面遇到一个问题:就是该组拼接的内容过长时会被截断。
一开始以为是数据库存数据的时候被截断了,但是看到数据库里的数据还是好的,最后发现是 group_concat 的问题。
MYSQL内部对这个是有设置的,默认设置的长度是1024,如果我们需要更大,就需要更改配置。
因为线上环境数据库不好更改,所以使用了下面这行语句去解决。他会把本次会话的默认长度改掉,下次再连接需要重新设置。 还有一个Global,在数据库重启前会一直生效,但是对已存在的连接不会生效。
SET SESSION group_concat_max_len=4294967295