修改MYSQL中group_concat的长度限制

在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 groupconcat(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,返回字符串,还可以在返回的内容,在加入其它的数据。
欢迎订阅「K叔区块链」 - 专注于区块链技术学习

博客地址:http://www.jouypub.com

简书主页:https://www.jianshu.com/u/756c9c8ae984

segmentfault主页:https://segmentfault.com/blog/jouypub

腾讯云主页:https://cloud.tencent.com/developer/column/72548

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

编辑于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏三杯水

Python Elasticsearch API操作ES集群

关键是DSL语法的编写涉及查询与聚合可以通过kibana的visualize或者devtool先测试出正确语法,然后结合python对列表、字典、除法、字符串等...

3282
来自专栏魏琼东

基于DotNet构件技术的企业级敏捷软件开发平台 - AgileEAS.NET平台开发指南 - 数据层开发

对象关系映射          AgileEAS.NETORM并没有采用如NHibernate中映射文件的文件的模式,而是采用了直接硬编码的模式实现,ORM体系...

2209
来自专栏小勇DW3

Java设计模式-单例模式

作为对象的创建模式,单例模式确保其某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例,这个类称为单例类。单例模式有以下特点:

1155
来自专栏坚毅的PHP

雅美尓(yaml)实战

献给跟我一样对yaml(雅美尓)有婶婶挫败感的同学!         开始第一个pylon工程,我们就跟yaml配置文件开始了不解之缘。yaml是什么?它有哪些...

5488
来自专栏黑白安全

宽字节注入详解分析

简介  宽字节注入,它的作用可以绕过转义,也是绕过转义的其中一个办法  宽字节注入源于程序员设置MySQL连接时错误配置为:set character_set_...

5372
来自专栏PHP在线

mysqli_stmt::get_result 方法的替代方案

作者:西瓜玩偶(racnil070512 at hotmail dot com) 我们都知道,在mysqli库中,通过 mysqli_stmt::execut...

35212
来自专栏Java后端技术栈

Java多线程编程-(12)-单例模式几种写法的错与对

在所有的主流23中设计模式中,单例模式作为最简单也最容易理解也是使用最普遍的设计模式,他是一种对象创建模式,用于产生一个对象的具体实例,他可以确保系统中一个类只...

872
来自专栏运维

Python Elasticsearch API操作ES集群

关键是DSL语法的编写涉及查询与聚合可以通过kibana的visualize或者devtool先测试出正确语法,然后结合python对列表、字典、除法、字符串等...

2501
来自专栏小樱的经验随笔

【经验分享】后台常用的万能密码

这万能密码好几年前就有了。我都不当回事,结果这次真派上用场了,还真进了后台了 网站后台万能密码就是在用户名与密码处都写入下列字符,如果知道管理员帐号的话直接添...

9395
来自专栏编舟记

如何在@SpringBootTest中动态地启用不同的profiles

这个类存在的意义就是为了让其它类别的 ResourceTest 继承它,并在一次启动当中运行完所有的集成测试。避免每个 ResourceTest 都初始化启动 ...

2403

扫码关注云+社区

领取腾讯云代金券