Funkcja array_insert
Dotyczy: Databricks SQL
Databricks Runtime 13.3 LTS i nowsze
Zwraca rozszerzony array
, w którym elem
jest wstawiany na pozycji index
.
Składnia
array_insert(array, index, elem)
Argumenty
-
array
: Tablica. -
index
: niezerowe wyrażenie LICZBY CAŁKOWITEJ określające, gdzie należy wstawićelem
. Jeśli indeks jest ujemny,elem
jest wstawiany względem końca tablicy. -
elem
: wyrażenie tego samego typu co elementy elementuarray
.
Zwraca
Tablica tego samego typu co array
.
Uwagi
Wszystkie elementy rozpoczynające się od index
są przesunięte o jedną pozycję, aby zwolnić miejsce na elem
w index
.
Jeśli element index
znajduje się poza zakresem kardynalności tablicy array
, tablica jest wypełniana elementami NULL
.
Przykłady
> 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"]