在mysql中,有个函数叫“group_concat”,寻常运用能够发明不了题目,在处置惩罚大数据的时刻,会发明内容被截取了,
实在MYSQL内部对这个是有设置的,默许不设置的长度是1024,假如我们须要更大,就须要手工去修正
细致申明以下:
用了group_concat后,select里假如运用了limit是不起作用的.
用group_concat衔接字段的时刻是有长度限定的,并非有若干连若干。但你能够设置一下。
运用group_concat_max_len体系变量,你能够设置许可的最大长度。
体系默许的分开符是逗号
修正体式格局:
SET [SESSION | GLOBAL] group_concat_max_len = 10240
可修正的参数以下
GROUP_CONCAT将某一字段的值按指定的字符举行累加,体系默许的分开符是逗号,能够累加的字符长度为1024字节。
1、先举一个简朴的例子
select group_concat(f_a) from t_one group by f_b;
按f_b举行分组查询,将每组中的f_a举行累加。
2、修正默许的分开符
select group_concat(f_a separator '_') from t_one group by f_b;
separator 是一个关键字,背面随着要举行分开的字符
3、排序
select group_concat(f_a order by f_a separator '_') from t_one group by f_b;
4、修正默许字符大小
1) 在MySQL配置文件中加上
group_concat_max_len = 102400 #你要的最大长度
2) 能够简朴一点,实行语句,能够设置作用局限
SET GLOBAL group_concat_max_len=102400; SET SESSION group_concat_max_len=102400;
5、和concat运用
group_concat默许返回的是BLOB大对象,能够运用concat,返回字符串,还能够在返回的内容,在到场别的的数据。
相干引荐:
mysql大表中count()的用法以及mysql中count()的优化
mysql中无限极分类的代码完成
以上就是mysql中group_conca函数的怎样修正其长度限定的细致内容,更多请关注ki4网别的相干文章!