【PostgreSQL】whereで配列、in句で配列を使う

2020年11月13日PostgreSQL構文

スポンサーリンク

whereで配列を使う

--配列array['1','2','3']をwhereに使う
select * from テーブル名 where 列名 = any(array['1','2','3']);

--例
select * from m_school where school_code = any(array['1','2','3']);

any(配列)は、配列の中のいずれかの値に合致すればTrueになる関数です。

 

whereのin句で配列を使う

--whereのin句で配列array['1','2','3']を指定する
select * from テーブル名 where 列名 in (select unnest(array['1','2','3']));

--例
select * from m_school where school_code in (select unnest(array['1','2','3']));

unnest(配列)は、配列を行に展開します。行に展開することでinで検索可能にしています。

 

 

構文まとめを書いています。ぜひ一度見てみて下さい

「基本構文・こんな時どう書くんだっけ?」をまとめました