Opérateur [ ] (signe crochets)

S’applique à :case marquée oui Databricks SQL case marquée oui Databricks Runtime

Retourne un élément de tableau ou une valeur de mappage en fonction d’un index ou d’une clé.

Syntaxe

expr [ keyExpr ]

Notez que l’utilisation de crochets ici est comme texte littéral et n’indique pas une syntaxe facultative.

Arguments

  • expr : Expression ARRAY ou MAP.
  • keyExpr : si expr est un tableau (ARRAY), numérique intégral. Sinon, expression correspondant au type de la clé du mappage (MAP).

Retours

Le type de résultat est le type d’élément du tableau (ARRAY) ou le type de valeur du mappage (MAP).

Le premier élément d’un tableau (ARRAY) est à l’index 0.

Si le keyExpr n’est pas une clé valide pour le MAP, expr Azure Databricks retourne Null.

Si le keyExpr est en dehors des limites pour le ARRAY, expr Azure Databricks déclenche une erreur INVALID_ARRAY_INDEX.

Notes

Dans Databricks Runtime, si spark.sql.ansi.enabled a pour valeur false, l’opérateur retourne NULL à la place d’une erreur « hors limites ».

Exemples

> 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