ARRAY_FILL
📄字数 514
👁️阅读量 加载中...
功能描述
创建一个填充了指定元素的数组,其维度由第二个参数指定。可选的第三个参数为每个维度提供下界值(默认为1)。
ARRAY数据类型的详细信息请参见《SQL语法参考指南》的数组类型章节。
语法格式
sql
ARRAY_FILL(anyelement, integer1[][, integer2[]])输入参数
anyelement:要填充到数组中的元素。integer1[]:一个整数数组,表示数组的维度大小。integer2[]:一个整数数组,表示数组各维度的下界(即起始下标)。默认数组的下界是1。
输出结果
ARRAY类型,组合后的数组。
执行类型
| TYPE | VALUE | 说明 |
|---|---|---|
| NATIVE | 0 | 函数只能在本地计算 |
| VOLATI | 0 | 函数的每次计算值不同 |
| STABLE | 0 | 函数的每次计算值相同 |
| COMPUTE | 0 | 函数支持预计算取值 |
| NOT_CONST | 0 | 函数不支持转常数 |
| HAVE_DEF | 0 | 函数参数有默认值 |
示例
sql
-- 创建一个2x3的二维数组,其中每个元素都是11
SQL> SELECT ARRAY_FILL(11, ARRAY[2,3]);
+-------------------------+
| EXPR1 |
+-------------------------+
| {{11,11,11},{11,11,11}} |
+-------------------------+
-- 创建一个长度为3的一维数组,所有元素都填充为7,但数组的下标从2开始
SQL> SELECT ARRAY_FILL(7, ARRAY[3], ARRAY[2]);
+---------------+
| EXPR1 |
+---------------+
| [2:4]={7,7,7} |
+---------------+