Функция array_insert
Область применения: Databricks SQL
Databricks Runtime 13.3 LTS и выше
Возвращает развернутую array
whereelem
, которая вставлена в позицию index
.
Синтаксис
array_insert(array, index, elem)
Аргументы
-
array
: ARRAY. -
index
: ненулевое выражение INTEGER, указывающее where для insertelem
. Если индекс отрицательныйelem
вставляется относительно конца массива. -
elem
: выражение того же типа, что и элементыarray
.
Возвраты
Массив ARRAY того же типа, что и array
.
Примечания.
Все элементы, начиная сindex
, перемещаются по одной позиции, чтобы сделать место дляelem
.index
Если index
находится вне кратности массива array
, он заполняется с помощью NULL
s.
Примеры
> 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"]