Udostępnij za pośrednictwem


Funkcja try_element_at

Dotyczy: zaznacz pole wyboru oznaczone jako tak Databricks SQL zaznacz pole wyboru oznaczone jako tak Databricks Runtime 10.4 LTS i nowsze

Zwraca element o arrayExpr wartości at indexlub NULL, jeśli index jest poza granicą.

Zwraca wartość mapExpr dla keywartoś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 kluczy mapExpr

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śli abs(index) przekracza długość tablicy lub jeśli key 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