group_concat函数
MySQL 中的group_concat 是字符串连接函数,完整的语法如下:
group_concat([DISTINCT] 要连接的字段 [Order BY ASC/DESC 排序字段] [Separator '分隔符'])
可以结合group by 实现分组信息,同时可以指定分隔符和排序规则
陷阱
GROUP_CONCAT有个最大长度的限制,超过最大长度就会被截断掉
可以通过下面的语句查看最大长度
SELECT @@global.group_concat_max_len;
1024这就是一般MySQL系统默认的最大长度,如果你的bid串起来大于这个就会出问题,好在有解决的办法:
- 1.在MySQL配置文件中加上
group_concat_max_len = 204800 #你设定的最大长度
- 2.可以简单一点,执行语句:
mysql> SET GLOBAL group_concat_max_len=204800;
第一种方式需要重启mysql,建议使用第二种!