PostgreSQL 指定した値が配列のどこにあるかを取得する

PostgreSQL 指定した値が配列のどこにあるかを取得する

PostgreSQLで、指定した値が配列のどこにあるかを取得する手順を記述してます。

環境

  • OS Rocky Linux release 8.4 (Green Obsidian)
  • PostgreSQL 14.0
  • pgadmin 6.0

手順

指定した値が配列のどこにあるかを取得する場合は、「array_positions」を利用します。

array_positions(配列,値)

実際に、以下の配列から指定した値が配列内のどこにあるかを取得してみます。

select array_positions(array['a','a','b','a','b'], 'a')

実行結果

位置が取得されていること、確認できます。

値が存在しない場合

存在しなければ空のデータが返ります。

select array_positions(array['a','a','b','a','b'], 'c')

実行結果