Я имею двух таблицGROUP_CONCAT() MySQL возвращает ограниченные символы
tblColorLibrary
id name
1 test color
tblColors
id libraryId colorCode name
1 1 #fff Prime Color
2 1 #ddd Secondry Color
3 1 #E2CFC7 Favorite Color
Ниже мой запрос:
$stmt ="SELECT a.id, a.isActive as isActive, a.name as title, GROUP_CONCAT(b.colorCode) as colors, GROUP_CONCAT(b.name) as name FROM ".$this->tblLibrary." as a JOIN tblcolors as b ON a.id = b.libraryId GROUP BY a.id ORDER BY b.id ASC";
Этот запрос будет RETU rn результат вроде этого
Array
(
[0] => Array
(
[id] => 1
[isActive] => Y
[title] => test
[colors] => #fff,#ddd,#E2CFC7
[name] => Prime Color, Secondry Color, Favorite Color
)
)
Все идет нормально, пока у меня ограниченные записи. Когда у меня есть более 150 записей в tblColors, ключ имени дает только ограниченное количество символов. Не получать полные записи.
Я думаю, что будет ограничение в группе concat.
'GROUP_CONCAT' имеет максимальную длину около 1024. Вы можете изменить это через переменные сервера. См. Здесь: http://stackoverflow.com/questions/2567000/mysql-and-group-concat-maximum-length –
Проверьте 'group_concat_max_len' https://dev.mysql.com/doc/refman/5.0/en/server -system-variables.html # sysvar_group_concat_max_len –
@pala_ да, вы правы, я проверил strlen ($ name), он говорит 1024 – Butterfly