Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Berlaku untuk:
Databricks SQL
Databricks Runtime
Menghasilkan elemen arrayExpr di index.
Menampilkan nilai mapExpr untuk key.
Sintaks
element_at(arrayExpr, index)
element_at(mapExpr, key)
Argumen
-
arrayExpr: Ekspresi ARRAY. -
index: Ekspresi BILANGAN BULAT. -
mapExpr: Ekspresi MAP. -
key: Ekspresi yang cocok dengan jenis kuncimapExpr
Mengembalikan
Jika argumen pertama adalah ARRAY:
- Hasilnya adalah jenis elemen
expr. - abs(index) harus antara 1 dan panjang array.
- Jika
indexnegatif, fungsi mengakses elemen dari yang terakhir hingga yang pertama. - Azure Databricks menaikkan INVALID_INDEX_OF_ZERO jika
indexadalah 0. - Azure Databricks menaikkan INVALID_ARRAY_INDEX_IN_ELEMENT_AT jika
abs(index)melebihi panjang array.
Jika argumen pertama adalah MAP dan key tidak dapat dicocokkan dengan entri dalam mapExpr fungsi mengembalikan null.
Catatan
Di Databricks Runtime, jika spark.sql.ansi.failOnElementNotExists adalah false fungsi mengembalikan alih-alih NULL meningkatkan kesalahan.
Kondisi kesalahan umum
Contoh
> 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