ぷっぽプログラミング備忘録

linux, javascript, php, C#, そのうちScalaとかアプリ開発とかやってみたいです。

postgresqlでmysqlのgroup_concatと同じことがしたいならstring_aggを使う

前提

postgresql バージョン9以上ぐらい?

結論

string_agg を使う

例)barテーブルのtype_idでgroup byしたときに、foo_nameカラムをカンマでひとまとめの文字列にする

SELECT
    bar.type_id,
    string_agg(bar.foo_name, ‘, ‘) as foo_name_list
FROM
    bar
GROUP BY
    bar.type_id

参考

Postgres GROUP_CONCAT (Example)