MYSQL中group_concat有长度限制!默认1024

本文涉及的产品
RDSClaw,2核4GB
RDS MySQL DuckDB 分析主实例,基础系列 4核8GB
RDS MySQL DuckDB 分析主实例,集群系列 4核8GB
简介:
在mysql中,有个函数叫“group_concat”,平常使用可能发现不了问题,在处理大数据的时候,会发现内容被截取了,
其实MYSQL内部对这个是有设置的,默认不设置的长度是1024,如果我们需要更大,就需要手工去修改配置文件。

详细说明如下:

用了group_concat后,select里如果使用了limit是不起作用的.
用group_concat连接字段的时候是有长度限制的,并不是有多少连多少。但你可以设置一下。
使用group_concat_max_len系统变量,你可以设置允许的最大长度。
程序中进行这项操作的语法如下,其中 val 是一个无符号整数:
SET [SESSION | GLOBAL] group_concat_max_len = val;
若已经设置了最大长度,则结果被截至这个最大长度。
在SQLyog中执行 SET GLOBAL group_concat_max_len = 10 后,重新打开SQLyog,设置就会生效。
---------------------------------------------------------------
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,返回字符串,还可以在返回的内容,在加入其它的数 据。
相关实践学习
自建数据库迁移到云数据库
本场景将引导您将网站的自建数据库平滑迁移至云数据库RDS。通过使用RDS,您可以获得稳定、可靠和安全的企业级数据库服务,可以更加专注于发展核心业务,无需过多担心数据库的管理和维护。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
目录
相关文章
|
关系型数据库 MySQL 数据库
MySql GROUP_CONCAT使用说明
MySql GROUP_CONCAT使用说明
|
JSON 关系型数据库 MySQL
MySQL中GROUP_CONCAT与JSON_OBJECT、GROUP BY的巧妙结合:打造高效JSON数组汇总
MySQL中GROUP_CONCAT与JSON_OBJECT、GROUP BY的巧妙结合:打造高效JSON数组汇总
800 1
|
SQL 关系型数据库 MySQL
mysql中GROUP_CONCAT函数详解
mysql中GROUP_CONCAT函数详解
2314 0
|
关系型数据库 MySQL
MySQL中CONCAT() ,CONCAT_WS() ,GROUP_CONCAT()的用法
MySQL中CONCAT() ,CONCAT_WS() ,GROUP_CONCAT()的用法
170 2
|
SQL 关系型数据库 MySQL
MySQL中concat()、concat_ws()、group_concat()三个函数的使用技巧案例与心得总结
MySQL中concat()、concat_ws()、group_concat()三个函数的使用
937 0
MySQL中concat()、concat_ws()、group_concat()三个函数的使用技巧案例与心得总结
|
前端开发 关系型数据库 MySQL
数据合并与分隔:解析MySQL中的GROUP_CONCAT()函数
在数据库管理中,将多行数据合并成一行并以特定分隔符进行分隔,常用于生成逗号分隔的列表等情况。GROUP_CONCAT()函数就是帮助我们实现这一目标的工具。
1364 0
|
关系型数据库 MySQL
MySQL GROUP_CONCAT 函数
MySQL GROUP_CONCAT 函数,字符串连接过长被截断
469 0
|
关系型数据库 MySQL
Mysql GROUP_CONCAT与CONCAT_WS配合使用单选、多选拼接
Mysql GROUP_CONCAT与CONCAT_WS配合使用单选、多选拼接
|
关系型数据库 MySQL
MySQL、Mariadb中GROUP_CONCAT 函数使用介绍
MySQL、Mariadb中GROUP_CONCAT 函数使用介绍
321 0
Zp
|
关系型数据库 MySQL
MySQL教程之concat以及group_concat的用法
MySQL教程之concat以及group_concat的用法
Zp
260 0

推荐镜像

更多
下一篇
开通oss服务