ホームページ >データベース >mysql チュートリアル >MySQL で GROUP BY を使用して文字列を連結するにはどうすればよいですか?

MySQL で GROUP BY を使用して文字列を連結するにはどうすればよいですか?

DDD
DDDオリジナル
2025-01-21 20:33:13785ブラウズ

How Can I Concatenate Strings Using GROUP BY in MySQL?

MySQL での GROUP BY 接続文字列の使用

MySQL などのリレーショナル データベース内のデータを操作する場合、多くの場合、貴重な情報を抽出したり、特定の目的のためにデータを操作したりするために文字列を連結する必要があります。 MySQL の GROUP BY 句は、データをグループ化し、集計関数 (結合など) を適用して集計結果を作成する強力な方法を提供します。

GROUP BY を使用して文字列を連結するには、GROUP_CONCAT() 関数を使用できます。この関数は 3 つのパラメータを受け入れます:

  • 結合する列の名前
  • 連結された値を区切るために使用される区切り文字 (オプション)
  • グループ関数 (通常は GROUP BY)

foo_id と foo_name の 2 つの列がある次のテーブルについて考えます。

foo_id foo_name
1 A
1 B
2 C

一意の foo_id ごとに foo_name 値を連結し、スペースで区切るには、次のクエリを使用できます。

<code class="language-sql">SELECT foo_id, GROUP_CONCAT(foo_name SEPARATOR ' ') FROM table GROUP BY foo_id;</code>

生成されたテーブルは次のようになります:

foo_id foo_name
1 A B
2 C

GROUP_CONCAT() について

MySQL ドキュメント (https://www.php.cn/link/807c2fa13d210319043db7c80d7cfb00() 関数は、グループからの接続の NULL 以外の値を含む文字列を返します。グループ NULL 値内に NULL 以外の値がない場合は、NULL を返します。

上記の例では、この関数は GROUP BY 句の各 foo_id の foo_name 値を連結します。 SEPARATOR パラメータは、各値をスペース文字で区切ることを指定します。

GROUP BY と GROUP_CONCAT() を使用すると、文字列を簡単に連結し、グループ化されたデータから集計結果を作成でき、MySQL でのデータ操作タスクに多用途のソリューションを提供します。

以上がMySQL で GROUP BY を使用して文字列を連結するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。