MySQL 和 GROUP_CONCAT() 最大长度

标签 mysql group-concat

我在 MySQL 查询中使用 GROUP_CONCAT() 将多行转换为单个字符串。 但是,此函数结果的最大长度为 1024 个字符。

我非常清楚,我可以更改参数 group_concat_max_len 来增加此限制:

SET SESSION group_concat_max_len = 1000000;

但是,在我正在使用的服务器上,我无法更改任何参数。不是通过使用前面的查询,也不是通过编辑任何配置文件。

所以我的问题是: 有没有其他方法可以将多行查询的输出转换为单个字符串?

最佳答案

SET SESSION group_concat_max_len = 1000000;

是临时的 session 范围设置。它仅适用于当前 session 您应该像这样使用它。

SET SESSION group_concat_max_len = 1000000;
select group_concat(column) from table group by column

您甚至可以在共享主机中执行此操作,但是当您使用其他 session 时,您需要重复 SET SESSION 命令。

关于MySQL 和 GROUP_CONCAT() 最大长度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39711950/

相关文章:

php - 使用 DOMXPath 查询方法抓取网站时,如何解释丢失的 xPath 并保持数据统一?

php - 使用 jquery 和 php 将数据与上传图像一起保存到 mysql

php - MySQL 中带有 group_concat 的存储函数

php - 搜索阿拉伯名称丢弃 "أ"之间的差异, "ا"在 mysql

java - 处理索引 0 超出长度 0 的范围以验证用户方法

mysql - 如何获取不同行上日期之间的记录?

PHP MySQL GROUP_CONCAT 限制

mysql - 多个 GROUP_CONCAT 语句 INTO MYSQL 触发器

mysql - 使 GROUP_CONCAT 查询更高效

mysql - 使用group_concat更新mysql表