Database JUNKY

MySQL,MariaDBを中心としたブログです

group_concatの結果セットの文字が欠けてしまう場合の対処方法

メモです。MySQLのgroup_concat()の関数、以前、こんなところで紹介させていただきましたが、結果データの列長が長すぎると結果が欠けて出力されてしまいます。しかもデフォルトの設定ではエラーにはなりません。

group_concatの仕様として、MySQLの結果セットの値(group_concat_max_len)で指定した文字数を超えてしまうと、MySQLは自動的に、文字をtruncateしてしまいます。 以下の構文で、group_concat_max_lenのサイズを広げてしまえばこの問題は解決します。 [sql] mysql > set global group_concat_max_len=2048; [/sql] ※デフォルトでは、1024文字です。1024文字を超えると、1024以降の文字が自動的にカットされてしまいますのでその上限をあげてしまえばいいのです

以上、ご参考まで