ARRAY_LENGTH
📄字数 527
👁️阅读量 加载中...
功能描述
返回ARRAY类型参数在指定维度的长度。
ARRAY数据类型的详细信息请参见《SQL语法参考指南》的数组类型章节。
语法格式
sql
ARRAY_LENGTH(anyarray, integer)输入参数
anyarray:要检查其长度的数组,ARRAY类型数据。integer: 指定要查询的维度编号(从1开始)。
输出结果
INTEGER类型,指定维度长度。
执行类型
| TYPE | VALUE | 说明 |
|---|---|---|
| NATIVE | 0 | 函数只能在本地计算 |
| VOLATI | 0 | 函数的每次计算值不同 |
| STABLE | 0 | 函数的每次计算值相同 |
| COMPUTE | 0 | 函数支持预计算取值 |
| NOT_CONST | 0 | 函数不支持转常数 |
| HAVE_DEF | 0 | 函数参数有默认值 |
示例
sql
-- 一维数组`[1, 2, 3]`,包含3个元素。返回第一个维度(也是唯一一个维度)的长度,即`3`
SQL> SELECT ARRAY_LENGTH(ARRAY[1,2,3], 1);
+-------+
| EXPR1 |
+-------+
| 3 |
+-------+
-- 一维数组`[NULL]`,包含1个元素。返回第一个维度的长度,即`1`
SQL> SELECT ARRAY_LENGTH(ARRAY[NULL], 1);
+-------+
| EXPR1 |
+-------+
| 1 |
+-------+
-- 一维数组`['text']`,包含1个字符串元素。返回第二个维度的长度,但这个数组只有一个维度,因此没有第二个维度,返回`NULL`
SQL> SELECT ARRAY_LENGTH(ARRAY['text'], 2);
+--------+
| EXPR1 |
+--------+
| <NULL> |
+--------+