Note

key=valueの形にして結合したい。 例えばURLのパラメータなどがkeyvalue`でテーブル上で分かれている場合に一つのURLにSQL上で結合する

idkeyvalue
1sourcesocial
1mediuminstagram
1campaignstory

このようなテーブルを以下のような形に修正する

idtags
1source=social&medium=instagram&campaign=story

手順

1. keysourcekey=sourceの形に変換する

with table as (
   select id, concat(key, '=', value) as data from raw
)

以下のようなテーブルができる

iddata
1source=social
1medium=instagram
1campaign=story

2. key=source&で結合する

select id, string_agg(data, '&') from table group by id

以下のようなテーブルができる

idtags
1source=social&medium=instagram&campaign=story

concatは文字列結合 ※ string_aggはカラムの結合