Memeriksa apakah Array a dan Array b memiliki elemen yang sama.
Sintaksis
boolean arrays_overlap(array<T> <a>, array<T> <b>)Parameter
a dan b: wajib. Parameter ini menentukan array. T dalam array<T> menentukan tipe data elemen-elemen dalam array. Elemen-elemen dapat berupa tipe data apa pun. Tipe data elemen-elemen dalam Array a dan Array b harus sama.
Tipe data berikut didukung:
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
Nilai kembali
Nilai dengan tipe BOOLEAN dikembalikan. Nilai kembali ditentukan oleh aturan berikut:
Jika Array a mengandung setidaknya satu elemen yang ada di Array b dan bukan null, nilai true dikembalikan.
Jika Array a dan Array b tidak memiliki elemen yang sama, kedua array tersebut tidak kosong, dan salah satu atau kedua array mengandung elemen null, nilai null dikembalikan.
Jika Array a dan Array b tidak memiliki elemen yang sama, dan kedua array tersebut tidak kosong serta tidak mengandung elemen null, nilai false dikembalikan.
Contoh
Contoh 1: Periksa apakah
array(1, 2, 3)danarray(3, 4, 5)memiliki elemen yang sama. Pernyataan contoh:-- Nilai kembali adalah true. select arrays_overlap(array(1, 2, 3), array(3, 4, 5));Contoh 2: Periksa apakah
array(1, 2, 3)danarray(6, 4, 5)memiliki elemen yang sama. Pernyataan contoh:-- Nilai kembali adalah false. select arrays_overlap(array(1, 2, 3), array(6, 4, 5));Contoh 3: Periksa apakah salah satu array mengandung elemen null. Pernyataan contoh:
-- Nilai kembali adalah null. select arrays_overlap(array(1, 2, 3), array(5, 4, null));
Fungsi terkait
ARRAYS_OVERLAP 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.