Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of mappen te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen om mappen te wijzigen.
Van toepassing op:
Databricks SQL
Databricks Runtime
Retourneert het element van een arrayExpr at index.
Retourneert de waarde van mapExpr voor key.
Syntaxis
element_at(arrayExpr, index)
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 vanmapExpr
Retouren
Als het eerste argument een MATRIX is:
- Het resultaat is van het type van de elementen van
expr. - abs(index) moet tussen 1 en de lengte van de matrix zijn.
- Als
indexdit negatief is, krijgt de functie toegang tot elementen van de laatste tot de eerste. - Azure Databricks verhoogt INVALID_INDEX_OF_ZERO als
index0 is. - Azure Databricks verhoogt INVALID_ARRAY_INDEX_IN_ELEMENT_AT als
abs(index)de lengte van de matrix overschrijdt.
Als het eerste argument een MAP is en key niet kan worden vergeleken met een vermelding in mapExpr de functie, retourneert null.
Notitie
Als in Databricks Runtime spark.sql.ansi.failOnElementNotExistsfalse de functie wordt geretourneerd NULL in plaats van fouten op te geven.
Algemene foutvoorwaarden
Voorbeelden
> 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