Funktionen try_element_at
Gäller för: Databricks SQL
Databricks Runtime 10.4 LTS och senare
Returnerar elementet i ett arrayExpr
på index
, eller NULL om index
det är utanför gränsen.
Returnerar värdet mapExpr
för för key
, eller NULL-ID key
finns inte.
Syntax
try_element_at(arrayExpr, index)
try_element_at(mapExpr, key)
Argument
arrayExpr
: Ett ARRAY-uttryck.index
: Ett INTEGER-uttryck.mapExpr
: Ett MAP-uttryck.key
: Ett uttryck som matchar typen av nycklar förmapExpr
Returer
Om det första argumentet är en MATRIS:
- Resultatet är av typen av elementen
expr
i . - abs(index) får inte vara 0.
- Om
index
är negativt kommer funktionen åt element från den sista till den första. - Funktionen returnerar
NULL
omabs(index)
överskrider matrisens längd eller omkey
den inte finns på kartan.
Exempel
> 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