Поделиться через


Функция 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 , он заполняется с помощью NULLs.

Примеры

> 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"]