ホームページ >データベース >mysql チュートリアル >MySQL で GROUP BY を使用して文字列を連結するにはどうすればよいですか?
MySQL などのリレーショナル データベース内のデータを操作する場合、多くの場合、貴重な情報を抽出したり、特定の目的のためにデータを操作したりするために文字列を連結する必要があります。 MySQL の GROUP BY 句は、データをグループ化し、集計関数 (結合など) を適用して集計結果を作成する強力な方法を提供します。
GROUP BY を使用して文字列を連結するには、GROUP_CONCAT() 関数を使用できます。この関数は 3 つのパラメータを受け入れます:
例
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 サイトの他の関連記事を参照してください。