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 サイトの他の関連記事を参照してください。