ホームページ > データベース > mysql チュートリアル > GROUP_CONCAT を使用して複数の MySQL 行を 1 つのフィールドに結合するにはどうすればよいですか?

GROUP_CONCAT を使用して複数の MySQL 行を 1 つのフィールドに結合するにはどうすればよいですか?

Barbara Streisand
リリース: 2025-01-25 09:26:09
オリジナル
589 人が閲覧しました

How Can I Combine Multiple MySQL Rows into a Single Field Using GROUP_CONCAT?

GROUP_CONCAT を使用して複数の MySQL 行を 1 つのフィールドに統合する

複数の行のデータを MySQL 結果の 1 つのフィールドに結合する必要がありますか? テーブルを結合すると、必要以上の行が発生する可能性があります。 MySQL の GROUP_CONCAT 関数は、洗練されたソリューションを提供します。

この関数は、複数の行の値をグループ内の単一の文字列に連結します。仕組みは次のとおりです:

<code class="language-sql">SELECT person_id,
       GROUP_CONCAT(hobbies SEPARATOR ', ') AS hobbies_list
FROM peoples_hobbies
GROUP BY person_id;</code>
ログイン後にコピー

このクエリは、各人のすべての趣味を hobbies_list 列内の単一のカンマ区切り文字列に効率的にコンパイルします。

さらに細かく制御するには、次のオプションを検討してください:

  • DISTINCT: 連結された文字列内の重複エントリを避けてください。
  • ORDER BY: 特定の順序の連結前の値を配置します。
  • SET group_concat_max_len = <value>: 結果の文字列の最大長を調整します (デフォルトは 1024 バイト)。 連結された文字列がこの制限を超える場合は、これを調整する必要があります。

これらの機能を使用すると、MySQL データを効果的に管理し、ニーズに合わせてよりコンパクトで整理された形式で表示できます。

以上がGROUP_CONCAT を使用して複数の MySQL 行を 1 つのフィールドに結合するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート