ARRAY_POSITION
功能描述
在一个数组中查找指定元素第一次出现的位置。它返回该元素的下标(从1开始),如果元素不存在于数组中,则返回 NULL。指定参数integer
时,则查询从该下标开始。
注意:
此函数仅支持在一维数组中使用。
ARRAY_POSITION返回元素第一次出现位置的下标,ARRAY_POSITIONS返回所有匹配元素的下标(从1开始)。
ARRAY数据类型的详细信息请参见《SQL语法参考指南》的ARRAY数据类型章节。
语法格式
ARRAY_POSITION(anycompatiblearray, anycompatible[, integer])
参数说明
anycompatiblearray
:要查找的数组,ARRAY类型数据。anycompatible
:要查找的元素。该元素的类型必须与数组中的元素类型兼容。integer
:可选参数,从哪个位置开始查找,默认为1(即从数组的第一个元素开始查找)。
函数返回类型
INTEGER类型。
示例
从默认下标1开始查找指定元素'mon'
第一次出现的位置。
sql
SQL> SELECT ARRAY_POSITION(ARRAY['sun', 'mon', 'tue', 'wed', 'thu', 'fri', 'sat'], 'mon');
EXPR1 |
------------------------------------------------------------------------------
2|
从下标3开始查找指定元素'mon'
第一次出现的位置。
sql
SQL> SELECT ARRAY_POSITION(ARRAY['sun', 'mon', 'tue', 'wed', 'thu', 'fri', 'sat', 'mon'], 'mon', 3);
EXPR1 |
------------------------------------------------------------------------------
8|