全部产品
Search
文档中心

MaxCompute:INDEKS

更新时间:Jul 02, 2025

Mengembalikan nilai yang memenuhi kondisi tertentu dalam peta atau larik.

Sintaksis

INDEX (<var1>[<var2>])

Catatan penggunaan

  • Jika var1 bertipe array<T>, fungsi ini mengambil elemen pada posisi var2 dalam var1. Posisi elemen dihitung dari kiri ke kanan, dimulai dari 0.

  • Jika var1 bertipe map<K, V>, fungsi ini mengambil nilai dengan kunci var2 dalam var1.

Catatan
  • Saat menggunakan fungsi ini, Anda harus menghapus index dan langsung mengeksekusi <var1>[<var2>]. Jika tidak, akan terjadi kesalahan.

  • Jika var1 bertipe array, maka var2 berfungsi sebagai indeks. Jika var1 bertipe map, maka var2 berperan sebagai kunci.

Parameter

  • var1: Wajib. Nilainya harus bertipe array<T> atau map<K, V>. T dalam array<T> menentukan tipe data elemen dalam array. Elemen dapat berupa tipe data apa pun. K dan V dalam map<K, V> menentukan kunci dan nilai dari sebuah peta.

  • var2: Wajib.

    • Jika var1 bertipe array<T>, var2 harus bertipe BIGINT dan lebih besar atau sama dengan 0.

    • Jika var1 bertipe map<K, V>, var2 harus memiliki tipe data yang sama dengan K.

Nilai kembali

  • Jika var1 bertipe array<T>, nilai yang dikembalikan adalah tipe data yang ditentukan oleh T. Nilai kembali bervariasi berdasarkan aturan berikut:

    • Jika jumlah elemen dalam var1 kurang dari var2, null dikembalikan.

    • Jika var1 adalah null, null dikembalikan.

  • Jika var1 bertipe map<K, V>, nilai yang dikembalikan adalah tipe data yang ditentukan oleh V. Nilai kembali bervariasi berdasarkan aturan berikut:

    • Jika map<K, V> tidak mengandung kunci dengan nilai var2, null dikembalikan.

    • Jika var1 adalah null, null dikembalikan.

Contoh

  • Contoh 1: var1 bertipe array<T>. Contoh pernyataan:

    -- Nilai kembali adalah c. 
    SELECT ARRAY('a','b','c')[2];
  • Contoh 2: var1 bertipe map<K, V>. Contoh pernyataan:

    -- Nilai kembali adalah 1. 
    SELECT STR_TO_MAP("test1=1,test2=2")["test1"];

Fungsi terkait

INDEX adalah fungsi tipe kompleks. Untuk informasi lebih lanjut tentang fungsi-fungsi yang digunakan untuk memproses data dari tipe data kompleks seperti ARRAY, MAP, STRUCT, dan JSON, lihat Fungsi Tipe Kompleks.