Compartir vía


Operador [ ] (signo de corchete)

Se aplica a:casilla marcada como Sí Databricks SQL casilla marcada como Sí Databricks Runtime

Devuelve un elemento de matriz o un valor de asignación a partir de un índice o una clave.

Sintaxis

expr [ keyExpr ]

Tenga en cuenta que el uso de corchetes aquí es como texto literal y no indica sintaxis opcional.

Argumentos

  • expr: expresión ARRAY o MAP.
  • keyExpr: si expr es una matriz, un numérico entero. De lo contrario, una expresión que coincida con el tipo de la clave de asignación.

Devoluciones

El tipo de resultado es el tipo de elemento de la matriz o el tipo de valor de asignación.

El primer elemento de la matriz está en el índice 0.

Si el keyExpr no es una clave válida para la asignación expr Azure Databricks devuelve null.

Si keyExpr está fuera del límite de la matriz expr, Azure Databricks genera un error INVALID_ARRAY_INDEX.

Nota:

En Databricks Runtime, si spark.sql.ansi.enabled es false, el operador devuelve NULL en lugar de un error de fuera de límites.

Ejemplos

> 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