mysql GROUP_CONCAT总是返回blob我甚至更改了所有group_concat_max_len = 100000000的帮助?

时间:2011-10-24 16:21:43

标签: mysql blob group-concat

我已尝试在互联网上尝试更改group_concat_max_len的几乎所有教程,但由于文件my.ini在wamp服务器中不存在group_concat_max_len,我执行以下查询显示变量,如'group%';和SET @@ group_concat_max_len = 9999999;但它说任何行影响了我该如何解决?我找不到解决方案请帮忙

我已经做了一个查询,但我不工作它返回blob

SET GLOBAL group_concat_max_len=4096;
SELECT correo_id_correo, GROUP_CONCAT(destinatario_id_usuario SEPARATOR ',') FROM correo_has_usuario GROUP BY correo_id_correo;

2 个答案:

答案 0 :(得分:2)

根据manual page for GROUP_CONCAT()

  

除非group_concat_max_len较小,否则结果类型为TEXT或BLOB   大于或等于512,在这种情况下,结果类型是VARCHAR或   VARBINARY。

因此增加group_concat_max_len不会返回VARCHARVARBINARY。你需要减少它。

答案 1 :(得分:1)

试试这个

SELECT concat(CONVERT(column1,char(8))," , ") AS id,
       group_concat(CONVERT(column2, CHAR(20)) separator '|') AS result 
FROM `tablename` 
WHERE 1 group by column1

此处CONVERT会将字段column1的值转换为char类型。并且CONVERT功能将起作用。

来源:Coderhub