1. ホーム
  2. sql

[解決済み] MySQLでGROUP BYを使って文字列を連結する方法とは?

2022-03-25 03:31:24

質問

基本的には、この状態からどうすればいいのかということです。

foo_id foo_name
1 A
1 B
2 C

をこれに変更します。

foo_id foo_name
1 A B
2 C

解決方法は?

SELECT id, GROUP_CONCAT(name SEPARATOR ' ') FROM table GROUP BY id;

https://dev.mysql.com/doc/refman/8.0/en/aggregate-functions.html#function_group-concat

上記リンク先より GROUP_CONCAT : この関数は、グループの非 NULL 値を連結した文字列の結果を返します。NULLでない値がない場合はNULLを返します。