Delen via


try_element_at-functie

Van toepassing op: vinkje als ja aan Databricks SQL vinkje als ja aan Databricks Runtime 10.4 LTS en hoger

Retourneert het element van een arrayExpr at index- of NULL-waarde als index deze buiten de grenzen valt.

Retourneert de waarde voor mapExpr key, of null-id key bestaat niet.

Syntaxis

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

Argumenten

  • arrayExpr: Een MATRIX-expressie.
  • index: Een INTEGER-expressie.
  • mapExpr: Een MAP-expressie.
  • key: Een expressie die overeenkomt met het type sleutels van mapExpr

Retouren

Als het eerste argument een MATRIX is:

  • Het resultaat is van het type van de elementen van expr.
  • abs(index) mag niet 0 zijn.
  • Als index dit negatief is, krijgt de functie toegang tot elementen van de laatste tot de eerste.
  • De functie retourneert NULL of abs(index) de lengte van de matrix wordt overschreden of als key deze niet bestaat in de kaart.

Voorbeelden

> 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