array_position()

返回数组中值首次出现的函数

array_position() 是一个系统函数,返回提供的 数组 中提供值的首次出现的下标(位置)。可以可选地提供起始下标。

array_position()PostgreSQL 9.5 中添加。

用法

array_position ( anyarray, anyelement [, integer ] ) → integer

提供的数组只能有一维。

要搜索值的全部出现情况,请使用 array_positions()

更改历史记录

示例

array_position() 的基本用法示例

postgres=# SELECT array_position(ARRAY[1,2,3], 2);
 array_position 
----------------
              2
(1 row)

查找在提供的下标或之后出现的第一个值

postgres=# SELECT array_position(ARRAY['foo','bar','baz','boo','foo'], 'foo', 3);
 array_position 
----------------
              5
(1 row)

可以搜索 NULL

postgres=# SELECT array_position(ARRAY[1,2,3,NULL,5], NULL);
 array_position 
----------------
              4
(1 row)

尝试使用多维数组

postgres=# SELECT array_position(ARRAY[⁣[1,2,3],[1,2,3]⁣], 2);
ERROR:  searching for elements in multidimensional arrays is not supported

分类

数组系统函数

另请参阅

array_positions()

反馈

提交关于 "array_position()" 的任何评论、建议或更正 在此