1

我很好奇为什么带有 group_concat(concat()) 的 mySQL 没有显示应有的完整长度。对于较少的结果集,它是好的 - 结果完美显示。但是当另一组让我们说结果超过 12 时。

mysql代码:

SELECT province_id AS prov_id, province_name AS prov_name, count( tent_info.tid ) AS ntent, 
GROUP_CONCAT( concat(tent_info.tuser, '-', tent_info.tname )
ORDER BY tent_info.tname ASC
SEPARATOR ',' ) AS tlist
FROM tbl_province
INNER JOIN tent_info ON tbl_province.province_id = tent_info.prov
WHERE tbl_province.geo_id = '6'
GROUP BY province_id
ORDER BY province_name ASC

MySQL结果:

在此处输入图像描述 现在问题是我说的。结果没有完全加载。我假设当结果超过 12 时。如下图所示。

在此处输入图像描述

好吧,我认为这可能是因为:

  1. group_concat 允许的最大长度或
  2. 滥用 concat() 或
  3. tlist 中发生了一些错误,例如空文本或无效字符

请建议。

4

1 回答 1

4

尝试将此变量长度更新为更多,直到找不到完整结果。您可以设置全局变量和会话明智。

SET SESSION group_concat_max_len = '20000';
于 2012-11-08T05:18:03.423 回答