Condividi tramite


Funzione try_element_at

Si applica a: segno di spunta sì Databricks SQL segno di spunta sì Databricks Runtime 10.4 LTS e versioni successive

Restituisce l'elemento di un oggetto arrayExpr in corrispondenza indexdi o NULL se index non è associato.

Restituisce il valore di mapExpr per keyo l'ID key NULL non esiste.

Sintassi

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

Argomenti

  • arrayExpr: espressione ARRAY.
  • index: espressione INTEGER.
  • mapExpr: espressione MAP.
  • key: espressione che corrisponde al tipo di chiavi di mapExpr

Valori restituiti

Se il primo argomento è un array:

  • Il risultato è del tipo degli elementi di expr.
  • abs(index) non deve essere 0.
  • Se index è negativo, la funzione accede agli elementi dall'ultimo al primo.
  • La funzione restituisce NULL se abs(index) supera la lunghezza della matrice o se key non esiste nella mappa.

Esempi

> 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