如何使用没有concat剪切的mysql group_concat(concat())

时间:2012-11-08 05:01:53

标签: mysql sql select concat group-concat

我很好奇为什么带有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结果:

enter image description here 现在问题就是我所说的。结果没有完全加载。我假设当结果超过12时。如下图所示。

enter image description here

我认为可能是因为:

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

1 个答案:

答案 0 :(得分:3)

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

SET SESSION group_concat_max_len = '20000';