A element_at
függvény
A következőkre vonatkozik: Databricks SQL Databricks Runtime
Egy at index
elemét arrayExpr
adja vissza.
A következő értékét adja eredményül mapExpr
key
: .
Syntax
element_at(arrayExpr, index)
element_at(mapExpr, key)
Argumentumok
arrayExpr
: TÖMB kifejezés.index
: Egész szám kifejezés.mapExpr
: MAP-kifejezés.key
: A kulcsok típusának megfelelő kifejezésmapExpr
Válaszok
Ha az első argumentum egy TÖMB:
- Az eredmény a
expr
. - az abs(index) értékének 1 és a tömb hossza között kell lennie.
- Ha
index
negatív, a függvény az utolsótól az elsőig hozzáfér az elemekhez. - A függvény INVALID_ARRAY_INDEX_IN_ELEMENT_AT hibát jelez, ha
abs(index)
meghaladja a tömb hosszát.
Ha az első argumentum egy MAP, és key
a függvény egyik mapExpr
bejegyzésével nem egyeztethető, null értéket ad vissza.
Feljegyzés
A Databricks Runtime-ban, ha spark.sql.ansi.failOnElementNotExists
a false
függvény a hibák növelése helyett adja vissza NULL
a függvényt.
Példák
> SELECT 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 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