PostgreSQL array_position() 函数使用指南

PostgreSQL array_position() 函数在一个指定的数组中查找指定的元素,并返回第一次出现的下标。

array_position() 语法

这里是 PostgreSQL array_position() 函数的语法:

array_position(array, element[, start]) -> integer

参数

array
必需的。 要从中搜索的数组。它必须是一个一维数组。
element
必需的。 要搜索的元素。元素的类型必须和数组的数据类型一致。
start
可选的。 搜索开始的下标。

返回值

PostgreSQL array_position() 函数在一个指定的数组中查找指定的元素,并返回第一次出现的下标。如果找不到指定的元素,返回 NULL

如果搜索的元素和数组的数据类型不一致,array_position() 函数将会返回一个错误。

array_position() 示例

本示例展示了如何使用 PostgreSQL array_position() 函数从一个数组中查找元素。

SELECT array_position(ARRAY[0, 1, 2], 1);
 array_position
----------------
              2

这说明, 元素 2 在数组 [0, 1, 2] 的位置是 2

您可以指定开始搜索的下标,比如:

SELECT array_position(ARRAY[0, 1, 2, 1, 2], 1, 3);
 array_position
----------------
              4

这里,虽然第一个 1 位于下标 2,但是由于开始搜索的下标是 3,因此他返回 4