紙一重の積み重ね

35歳のエンジニアがなれる最高の自分を目指して、学んだことをこつこつ情報発信するブログです。

【PostgreSQL】1つのカラムに入ったカンマ区切りのデータを分割して取得する方法

f:id:yokoyantech:20181112174646p:plain

実行環境

  • AWS
  • PostgreSQL10.3

やりたいこと

  • 1つのカラムにカンマ区切りでidなどが入っている
  • このカラムを分割してキーにしたい

こういうデータを、

列名
hoge_id 1,2,3,11

こうしたい。

列名
hoge_id 1
hoge_id 2
hoge_id 3
hoge_id 11

実現方法

regexp_split_to_table(カラム名, ',')を使う

実装例

SELECT regexp_split_to_table(hoge_id, ',') AS hoge_id
FROM hogehoge