Skip to content

ARRAY_POSITIONS

功能描述

在一个数组中查找指定元素所有出现位置。它返回该元素的下标(从1开始),如果元素不存在于数组中,则返回 NULL。

注意:

此函数仅支持在一维数组中使用。

ARRAY_POSITION返回元素第一次出现位置的下标,ARRAY_POSITIONS返回所有匹配元素的下标(从1开始)。

ARRAY数据类型的详细信息请参见《SQL语法参考指南》的ARRAY数据类型章节。

语法格式

ARRAY_POSITIONS(anycompatiblearray, anycompatible)

参数说明

  • anycompatiblearray:要查找的数组,ARRAY类型数据。
  • anycompatible:要查找的元素。该元素的类型必须与数组中的元素类型兼容。

函数返回类型

INTEGER[]类型(整数数组)。

示例

查找指定元素'mon'在数组中的位置。

sql
SQL> SELECT ARRAY_POSITIONS(ARRAY['sun', 'mon', 'tue', 'wed', 'thu', 'fri', 'sat', 'mon'], 'mon');

EXPR1 | 
------------------------------------------------------------------------------
{2,8}|