All Products
Search
Document Center

MaxCompute:INDEX

Last Updated:Mar 26, 2026

Mengembalikan elemen dari array berdasarkan posisi atau nilai dari map berdasarkan kunci.

Sintaksis

Akses array

<array_expr>[<index>]

Akses Peta

<map_expr>[<key>]
Penting

Gunakan notasi kurung siku secara langsung. Jangan membungkusnya dalam INDEX(...)—pemanggilan INDEX(<var1>[<var2>]) akan menghasilkan error.

Catatan penggunaan

  • Pengindeksan array bersifat 0-based: elemen pertama berada pada indeks 0, elemen kedua pada 1, dan seterusnya.

  • Untuk akses map, kunci harus sesuai secara tepat dengan tipe kunci K yang dideklarasikan untuk map tersebut.

Parameter

Akses array

ParameterTipeDeskripsi
array_exprarray<T>Array yang akan diakses. Mengembalikan null jika array bernilai null.
indexBIGINT, >= 0Posisi berbasis 0 dari elemen yang akan diambil. Mengembalikan null jika indeks berada di luar batas.

Tipe kembali: T—tipe elemen yang dideklarasikan dalam array<T>.

Akses peta

ParameterTipeDeskripsi
map_exprmap<K, V>Map yang akan diakses. Mengembalikan null jika map bernilai null.
keySama dengan tipe KKunci yang akan dicari. Mengembalikan null jika kunci tidak ada dalam map.

Tipe kembali: V—tipe nilai yang dideklarasikan dalam map<K, V>.

Contoh

Akses elemen array berdasarkan posisi

-- Mengembalikan 'c' (indeks 2 adalah elemen ketiga)
SELECT ARRAY('a', 'b', 'c')[2];

Akses nilai map berdasarkan kunci

-- Mengembalikan 1
SELECT STR_TO_MAP("test1=1,test2=2")["test1"];

Fungsi terkait

INDEX merupakan fungsi tipe kompleks. Untuk informasi lebih lanjut mengenai fungsi yang memproses data ARRAY, MAP, STRUCT, dan JSON, lihat Complex type functions.