写点什么

YashanDB ARRAY_POSITION 函数

作者:YashanDB
  • 2025-04-09
    广东
  • 本文字数:549 字

    阅读完需:约 2 分钟

ARRAY_POSITION 函数以 start_locate 为起点查找数组(数组变量,数组对象,数组类型)array_var 的成员中第一个出现 compare_member 的位置,并返回 INT 类型的该位置值。

本函数不支持向量化计算。

array_var

数组变量,其值可以为:

一个存在的数组,数组成员必须为普通标量数据类型。

NULL,此时函数返回 NULL。

compare_member

通用表达式,其值类型必须为与 array_var 数组成员可进行比较的类型,具体参考 YashanDB 的比较运算规则。

start_locate

通用表达式,不可为 NULL,其值类型须为 INT,或可隐式转换为 INT。

当 start_locate 为负数,或者超过数组长度时,函数返回 NULL。

示例(HEAP 表)

CREATE OR REPLACE TYPE arr_position_type IS VARRAY(10) OF CHAR(5);/
SELECT ARRAY_POSITION(arr_position_type('a', 'b', 'c', 'd'), 'c') pos FROM DUAL; POS ------------ 3
SELECT ARRAY_POSITION(arr_position_type('a', 'b', NULL, 'd', 'c'), NULL) pos FROM DUAL; POS ------------ 3
SELECT ARRAY_POSITION(arr_position_type('a', 'b', 'c', 'd', 'c'), 'c', 4) pos FROM DUAL; POS ------------ 5
SELECT ARRAY_POSITION(arr_position_type('a', 'b', 'c', 'd', 'c'), 1, 4) pos FROM DUAL; POS ------------
复制代码


用户头像

YashanDB

关注

全自研国产新型大数据管理系统 2022-02-15 加入

还未添加个人简介

评论

发布
暂无评论
YashanDB ARRAY_POSITION函数_YashanDB_InfoQ写作社区