try_element_at
function
Applies to: Databricks SQL Databricks Runtime 10.4 LTS and above
Returns the element of an arrayExpr
at index
, or NULL if index
is out of bound.
Returns the value of mapExpr
for key
, or NULL id key
does not exist.
Arguments
arrayExpr
: An ARRAY expression.index
: An INTEGER expression.mapExpr
: A MAP expression.key
: An expression matching the type of the keys ofmapExpr
Returns
If the first argument is an ARRAY:
The result is of the type of the elements of
expr
.abs(index) must not be 0.
If
index
is negative the function accesses elements from the last to the first.The function returns
NULL
ifabs(index)
exceeds the length of the array, or ifkey
does not exist in the map.
Examples
> 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