Funkcja try_element_at
Dotyczy: Databricks SQL Databricks Runtime 10.4 LTS i nowsze
Zwraca element o arrayExpr
wartości at index
lub NULL, jeśli index
jest poza granicą.
Zwraca wartość mapExpr
dla key
wartości , lub identyfikator key
NULL nie istnieje.
Składnia
try_element_at(arrayExpr, index)
try_element_at(mapExpr, key)
Argumenty
arrayExpr
: wyrażenie ARRAY.index
: wyrażenie INTEGER.mapExpr
: Wyrażenie MAP.key
: Wyrażenie pasujące do typu kluczymapExpr
Zwraca
Jeśli pierwszym argumentem jest tablica:
- Wynik jest typu elementów .
expr
- abs(index) nie może być 0.
- Jeśli
index
jest ujemna, funkcja uzyskuje dostęp do elementów od ostatniego do pierwszego. - Funkcja zwraca
NULL
wartość , jeśliabs(index)
przekracza długość tablicy lub jeślikey
nie istnieje na mapie.
Przykłady
> 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