2013-11-15 86 views
1

将MySQL中GROUP_CONCAT的结果限制为1024的原因是什么?将这个限制提高到更高的数字有什么意义?为什么限制MySQL中GROUP_CONCAT结果的长度?

这里有一个如何提高它的一个例子: http://blog.georgeolah.com/2013/03/mysql-group_concat-limit/

有什么想法?

谢谢!

+0

是什么原因?其实,问MySQL的开发人员。你可以做什么?检查[这个答案](http://stackoverflow.com/questions/19743653/limit-characters-in-mysql-query-column/19743707#19743707) –

回答

2

最好让obscure config变量的默认值太低。

默认限制似乎有点低,但它是为了防止您在获取单行时应用程序的内存过度分配。

如果您需要从数据库服务器获取更长的字符串,则可以随时提出group_concat_max_len

你还是不应该设置group_concat_max_len高于max_allowed_packet,否则字符串将被截断反正。

选择更高或更低group_concat_max_len值的其他含义是,如果值为255或更小,则结果列的数据类型将为CHAR或BINARY。如果最大值len大于255,那么数据类型将是TEXT或BLOB。