Megosztás a következőn keresztül:


A element_at függvény

A következőkre vonatkozik: jelölje be az igennel jelölt jelölőnégyzetet Databricks SQL jelölje be az igennel jelölt jelölőnégyzetet Databricks Runtime

Egy at indexelemé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és mapExpr

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