エンジニアのひよこ_level10

毎日更新してた人。たまに記事書きます。

【OracleDB】GROUP BYで文字列を結合していくLISTAGG【897日目】

特定のグループの文字列を結合したい

id, group_id, name
1, 1, apple
2, 1, grape
3, 2, banana
4, 3, orange

こんなテーブルがあって、

group_id, name
1, apple.grape
2, banana
3, orange

こうしたい

LISTAGG

SELECT
 LISTAGG(name, '.') WITHIN GROUP (order by null) listagg_name

区切り文字と対象グループを指定する。

MySQL等と集約関数の名前が違うので注意φ(・