MySQL の GROUP_CONCAT 制限の克服
MySQL の GROUP_CONCAT() 関数を使用すると、複数の行を 1 つの文字列に連結できます。ただし、この関数のデフォルトの最大長は 1024 文字です。 group_concat_max_len を使用して制限を増やすのは一般的な解決策ですが、すべてのホスティング環境で可能であるとは限りません。
代替解決策
複数行クエリの出力を取得するにはMySQLパラメータを変更せずに単一の文字列に変換すると、セッションスコープの回避策:
SET SESSION group_concat_max_len = 1000000; SELECT GROUP_CONCAT(column) FROM table GROUP BY column;
セッションスコープ設定
SET SESSION ステートメントは、現在のセッションにのみ適用される一時的なセッション固有の設定を設定します。これは、サーバー全体の構成を変更せずに、group_concat_max_len の上限を高く設定できることを意味します。
使用法
この回避策を使用するには:
注: GROUP_CONCAT クエリを実行する前に、必要な長さ制限を設定することが重要です。それ以外の場合は、デフォルトの制限である 1024 文字が適用されます。
以上がサーバー設定を変更せずに MySQL の GROUP_CONCAT の長さ制限を克服するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。