Partager via


Fonction try_element_at

S’applique à : coche marquée oui Databricks SQL oui coché Databricks Runtime 10.4 LTS et versions ultérieures

Retourne l’élément d’un arrayExpr à index, ou NULL si index est hors limite.

Retourne la valeur de mapExpr pour key, ou NULL si key n’existe pas.

Syntaxe

try_element_at(arrayExpr, index)
try_element_at(mapExpr, key)

Arguments

  • arrayExpr : expression ARRAY.
  • index : expression de type INTEGER.
  • mapExpr : expression de type MAP.
  • key : expression correspondant au type des clés de mapExpr

Retours

Si le premier argument est un tableau (ARRAY) :

  • Le résultat est du type des éléments de expr.
  • abs(index) ne doit pas être 0.
  • Si la valeur index est négative, la fonction accède aux éléments du dernier au premier.
  • La fonction retourne NULL si abs(index) dépasse la longueur du tableau ou si key n’existe pas dans la carte.

Exemples

> SELECT try_element_at(array(1, 2, 3), 2);
 2

> SELECT try_element_at(array(1, 2, 3), 5);
 NULL

> SELECT element_at(array(1, 2, 3), 5);
 Error: INVALID_ARRAY_INDEX_IN_ELEMENT_AT

> SELECT try_element_at(map(1, 'a', 2, 'b'), 2);
 b

> SELECT element_at(map(1, 'a', 2, 'b'), 3);
 NULL

> SELECT try_element_at(map(1, 'a', 2, 'b'), 3);
 NULL