array_insert
函数
适用于: Databricks SQL Databricks Runtime 13.3 LTS 及更高版本
返回一个展开的 array
,其中的 elem
插入到 index
位置。
语法
array_insert(array, index, elem)
参数
array
:一个 ARRAY。index
:一个指定在何处插入elem
的非零 INTEGER 表达式。 如果 index 为负数,则在相对于数组末尾的位置插入elem
。elem
:类型与array
的元素相同的表达式。
返回
与 array
类型相同的 ARRAY。
说明
所有以 index
开头的元素都移动一个位置,以便在 index
处为 elem
腾出空间。
如果 index
在 array
的基数之外,则用 NULL
填充数组。
示例
> SELECT array_insert(array('a', 'b', 'c'), 1, 'z');
["z","a","b","c"]
> SELECT array_insert(array('a', 'b', 'c'), 0, 'z');
Error
> SELECT array_insert(array('a', 'b', 'c'), -1, 'z');
["a","b","c","z"]
> SELECT array_insert(array('a', 'b', 'c'), 5, 'z');
["a","b","c",NULL,"z"]
> SELECT array_insert(array('a', 'b', 'c'), -5, 'z');
["z",NULL,"a","b","c"]
> SELECT array_insert(array('a', 'b', 'c'), 2, cast(NULL AS STRING));
["a",NULL,"b","c"]