Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Função
Aplica-se a:
SQL do Databricks
Databricks Runtime 13.3 LTS e versões posteriores
Retorna um array expandido em que elem é inserido na posição index.
Sintaxe
array_insert(array, index, elem)
Argumentos
-
array: uma ARRAY. -
index: uma expressão INTEGER diferente de zero especificando onde inserirelem. Se o índice for negativo, será inseridoelemem relação ao final da matriz. -
elem: uma expressão do mesmo tipo dos elementos doarray.
Retornos
Uma ARRAY do mesmo tipo de array.
Azure Databricks gera INVALID_INDEX_OF_ZERO se index for 0.
Azure Databricks aumentará COLLECTION_SIZE_LIMIT_EXCEEDED se o resultado exceder o limite de tamanho da matriz.
Observações
Todos os elementos que começam com index são deslocados em uma posição para abrir espaço para elem em index.
Se index estiver fora da cardinalidade array, a matriz será preenchida com NULLs.
Condições de erro comuns
Exemplos
> SELECT array_insert(array('a', 'b', 'c'), 1, 'z');
["z","a","b","c"]
> SELECT array_insert(array('a', 'b', 'c'), 0, 'z');
Error: INVALID_INDEX_OF_ZERO
> 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"]