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