Mengembalikan posisi kemunculan pertama dari elemen tertentu dalam Array a. Posisi elemen dihitung dari kiri ke kanan, dimulai dari 1.
Sintaksis
bigint array_position(array<T> <a>, T <element>)Parameter
a: Wajib. Menentukan array.
Tdalamarray<T>menentukan tipe data elemen-elemen dalam array. Tipe data yang didukung meliputi:TINYINT, SMALLINT, INT, dan BIGINT
FLOAT dan DOUBLE
BOOLEAN
DECIMAL dan DECIMALVAL
DATE, DATETIME, TIMESTAMP, IntervalDayTime, dan IntervalYearMonth
STRING, BINARY, VARCHAR, dan CHAR
ARRAY, STRUCT, dan MAP
element: Wajib. Elemen yang ingin dicari posisinya. Tipe data elemen ini harus sesuai dengan tipe data elemen-elemen dalam Array a.
Nilai pengembalian
Mengembalikan nilai bertipe BIGINT. Nilai pengembalian mengikuti aturan berikut:
Jika nilai a atau element adalah null, maka null akan dikembalikan.
Jika elemen yang ditentukan tidak ditemukan, 0 akan dikembalikan.
Contoh
Contoh 1: Mengembalikan posisi kemunculan pertama dari
1dalamarray(3, 2, 1). Pernyataan contoh:-- Nilai pengembalian adalah 3. select array_position(array(3, 2, 1), 1);Contoh 2: Elemen yang ditentukan adalah null. Pernyataan contoh:
-- Nilai pengembalian adalah null. select array_position(array(3, 1, null), null);
Fungsi terkait
ARRAY_POSITION merupakan 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.