[ ]
Operador (sinal de colchete)
Aplica-se a: SQL do Databricks Runtime do Databricks
Retorna um elemento de matriz ou um valor de mapa considerando um índice ou uma chave.
Sintaxe
expr [ keyExpr ]
Observe que o uso de colchetes aqui é como texto literal e não indica uma sintaxe opcional.
Argumentos
expr
: uma expressão ARRAY ou MAP.keyExpr
: seexpr
for uma ARRAY, um numérico integral. Caso contrário, uma expressão correspondente ao tipo da chave do MAP.
Retornos
O tipo de resultado é o tipo de elemento da ARRAY ou o tipo de valor do MAP.
O primeiro elemento de uma ARRAY está no índice 0.
Se a keyExpr
não for uma chave válida para o MAP expr
o Azure Databricks retornar nulo.
Se a keyExpr
estiver fora do limite da ARRAY expr
o Azure Databricks gerar um erro INVALID_ARRAY_INDEX.
Observação
No Databricks Runtime, se spark.sql.ansi.enabled for false
, o operador retornará NULL
, em vez de um erro “Fora do limite”.
Exemplos
> SELECT a[2] FROM VALUES(array(10, 20, 30)) AS T(a);
30
> SELECT m[1] FROM VALUES(map(1, 'Hello', 2, 'World')) AS T(m);
Hello