Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Funkce
Platí pro:
Databricks SQL
Databricks Runtime
Vrátí prvek znaku arrayExpr at index.
Vrátí hodnotu mapExpr pro key.
Syntaxe
element_at(arrayExpr, index)
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) musí být mezi 1 a délkou matice.
- Pokud
indexje funkce záporná, přistupuje k prvkům od posledního k prvnímu. - Azure Databricks vyvolá INVALID_INDEX_OF_ZERO pokud
indexje 0. - Azure Databricks zvýší INVALID_ARRAY_INDEX_IN_ELEMENT_AT pokud
abs(index)překročí délku pole.
Pokud je prvním argumentem MAP a key nelze ji spárovat s položkou ve mapExpr funkci, vrátí hodnotu null.
Poznámka:
Pokud spark.sql.ansi.failOnElementNotExists je false funkce v databricks Runtime, vrátí NULL místo vyvolání chyb.
Běžné chybové podmínky
Příklady
> 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), 0);
Error: INVALID_INDEX_OF_ZERO
> 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