MySQL统计函数GROUP_CONCAT陷阱
来源:互联网 发布:帝国cms 附件存放目录 编辑:程序博客网 时间:2024/05/17 23:15
本博客所有原创文章采用知识共享署名-非商业性使用-相同方式共享,转载请保留链接http://chaoqun.17348.com/2008/12/mysql-trap-of-group-concat/
最近在用MySQL做一些数据的预处理,经常会用到group_concat函数,比如类似下面一条语句
mysql>select aid,group_concat(bid) from tbl group by aid limit 1;
sql语句比较简单,按照aid分组,并且把相应的bid用逗号串起来。这样的句子大家可能都用过,也可能不会出问题,但是如果bid非常多的话,你就要小心了,比如下面的提示信息:
Query OK, XXX rows affected, 1 warning (3 min 45.12 sec)
怎么会有警告呢,打出来看看:
mysql> show warnings;+---------+------+-----------------------------------------+| Level | Code | Message |+---------+------+-----------------------------------------+| Warning | 1260 | 1 line(s) were cut by GROUP_CONCAT() |+---------+------+-----------------------------------------+
居然被GROUP_CONCAT截断了我的结果,查了一下手册,原来GROUP_CONCAT有个最大长度的限制,超过最大长度就会被截断掉,你可以通过下面的语句获得:
mysql> SELECT @@global.group_concat_max_len;+-------------------------------+| @@global.group_concat_max_len |+-------------------------------+| 1024 |+-------------------------------+
1024这就是一般MySQL系统默认的最大长度,如果你的bid串起来大于这个就会出问题,好在有解决的办法:
1.在MySQL配置文件中加上
group_concat_max_len = 102400 #你要的最大长度
2.可以简单一点,执行语句:
mysql> SET GLOBAL group_concat_max_len=102400;Query OK, 0 rows affected (0.01 sec)
再执行group_concat语句就不会出问题了,另外手册上还给出了group_concat的详细用法,给个示例你就明白了:
mysql>select aid,group_concat(bid order by bid separator ',') as bid_str from tbl group by aid;
还可以排序和设置分隔符,功能强大。
0 0
- MySQL统计函数GROUP_CONCAT陷阱
- MySQL统计函数GROUP_CONCAT陷阱
- MySQL统计函数GROUP_CONCAT陷阱
- MySQL统计函数GROUP_CONCAT陷阱
- mysql group_concat()函数陷阱问题
- 使用Mysql中group_concat函数中的陷阱
- 低版本MySql使用GROUP_CONCAT函数的陷阱
- Mysql 中的group_concat函数的使用及陷阱
- MySQL统计函数记录——GROUP_CONCAT()函数
- MySQL统计函数GROUP_CONCAT返回值长度设置!
- MySQL统计函数GROUP_CONCAT使用及报错分析
- MySQL中group_concat函数
- MySQL中group_concat函数
- mysql的group_concat函数
- Mysql 函数 Group_concat()详解
- 关于mysql函数GROUP_CONCAT
- MySQL group_concat函数
- MySQL中group_concat函数
- java开发中常用的开发工具-重要性
- json和php数组 格式的互相转换
- linux SCREEN 命令
- android Draw Rect 坐标图示
- php中修改数组元素的方法
- MySQL统计函数GROUP_CONCAT陷阱
- linux下bus,device,driver三者关系
- json日期格式化
- 10个饮食妙招让女人性格变好
- ye
- SVN(TortoiseSVN)提交时忽略bin和obj目录
- 一些常见的http状态码
- 打转显示
- Ubuntu下的服务管理:UpStart和chkconfig,或sys V init ?