Sdílet prostřednictvím


Funkce try_element_at

Platí pro: zaškrtnutí označeného ano Databricks SQL zaškrtnutí označeného ano Databricks Runtime 10.4 LTS a vyšší

Vrátí prvek at arrayExpr index, nebo NULL pokud index je mimo vazbu.

Vrátí hodnotu mapExpr pro keyhodnotu , nebo NULL ID key neexistuje.

Syntaxe

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

Argumenty

  • arrayExpr: Výraz ARRAY.
  • index: Výraz INTEGER.
  • mapExpr: Výraz MAP.
  • key: Výraz odpovídající typu klíčů mapExpr

Návraty

Pokud je prvním argumentem POLE:

  • Výsledek je typu prvků expr.
  • abs(index) nesmí být 0.
  • Pokud index je funkce záporná, přistupuje k prvkům od posledního k prvnímu.
  • Funkce vrátí NULL , pokud abs(index) překročí délku pole nebo pokud key v mapě neexistuje.

Příklady

> 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