MySQL截断结果,导致警告:array_multisort():数组大小不一致

时间:2011-05-20 03:48:50

标签: php mysql truncate

我有两个数组。每个都是通过以下方式从MySQL中提取的;

$query ="SELECT country,";
$query.="GROUP_CONCAT(report) AS reports, ";
$query.="GROUP_CONCAT(topic) AS topics, ";
$query.="FROM reports GROUP BY country";

所以,它给了我两个这样的字符串:

   reports[$i] = 2011-05-11 A,2011-05-11 B,2011-05-11 C
   topics[$i]  = A,B,C

它工作得很好但是,当报告字符串变得太长时,MySQL只是截断它,然后我就扔了

Warning: array_multisort(): Array sizes are inconsistent

但是我正在把线上爆炸。

显然这会破坏我的计划。但我不知道该怎么做,我有点陷入危机,因为我的老板说他将让整个公司开始使用它。如何让MySQL不截断结果?

2 个答案:

答案 0 :(得分:2)

group_concat_max_len设置为更高的值。 就个人而言,我会重写代码而不是使用group_concat函数,而是转而检索所有记录。

答案 1 :(得分:1)

顺便提一下,在mysql配置文件中设置了group_concat_max_len。之后你需要重启mysql。