ホームページ  >  記事  >  データベース  >  MySQL で複数の値をカンマ区切りの文字列に連結するにはどうすればよいですか?

MySQL で複数の値をカンマ区切りの文字列に連結するにはどうすればよいですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-11-06 11:22:03959ブラウズ

How to Concatenate Multiple Values into a Comma-Separated String in MySQL?

MySQL で選択された値のカンマ区切りの文字列

問題:

どうすればよいですかMySQL で選択した値をカンマ区切りの文字列に変換しますか?たとえば、複数の値を返すクエリがあり、それらを 1 つの文字列に結合したいとします。

初期コード:

これは、以下を選択するクエリの例です。テーブルからの複数の ID:

SELECT id
FROM table_level
WHERE parent_id = 4;

目的の出力:

個別の行の代わりに、すべての ID がカンマで区切られた単一の文字列を取得したいとします:

"5,6,9,10,12,14,15,17,18,779"

解決策:

MySQL の GROUP_CONCAT() 関数は、まさにこの目的のために設計されています。複数の値を、指定された区切り文字で区切って 1 つの文字列に連結します。 GROUP_CONCAT() を使用して修正されたクエリを次に示します。

SELECT GROUP_CONCAT(id)
FROM table_level
WHERE parent_id = 4
GROUP BY parent_id;

このクエリは、結果をparent_idでグループ化し、区切り文字としてカンマを使用して各グループ内のID値を連結します。結果は、目的のカンマ区切りの ID 文字列を含む 1 行になります。

以上がMySQL で複数の値をカンマ区切りの文字列に連結するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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