概要
MySQLのGROUP_CONCAT関数を使う場合、出力結果の文字列の文字数が1024文字を超えると、それ以降が出力されず、意図しない結果になってしまいます。これを、解消します。
原因
my.cnfに group_concat_max_len
という設定があり、このデフォルト値が1024文字担っているのが原因。なので、これを変更してMySQLを再起動してあげれば、OK。
対応内容
-
my.cnfに以下を追記。設定値は、大丈夫だと思う文字数(適当でごめんなさい・・・)
my.cnf
[mysqld]
group_concat_max_len=100000
2. MySQLを再起動
<hr>
以上です。ちなみに、とりあえずの設定(動作確認など)の場合は以下のクエリでOK
現在の設定値を確認
show variables like 'group_concat_max_len';
一時的に設定値を変更
set global group_concat_max_len = 100000;