Fonction try_element_at
S’applique à : Databricks SQL 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 demapExpr
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
siabs(index)
dépasse la longueur du tableau ou sikey
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