array_insert
Función
Se aplica a: Databricks SQL Databricks Runtime 13.3 LTS y versiones posteriores
Devuelve un objeto array
expandido donde elem
se inserta en la posición index
.
Sintaxis
array_insert(array, index, elem)
Argumentos
array
: una expresión ARRAY.index
: expresión INTEGER distinta de cero que especifica dónde se va a insertarelem
. Si el índice es negativo,elem
se inserta en relación con el final de la matriz.elem
: una expresión del mismo tipo que los elementos dearray
.
Devoluciones
Una expresión ARRAY del mismo tipo que array
.
Notas
Todos los elementos a partir de index
se desplazan por una posición para dejar espacio a elem
en index
.
Si index
está fuera de la cardinalidad de array
, la matriz se rellena con NULL
.
Ejemplos
> 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"]