Menggabungkan beberapa array yang diberikan dan mengembalikan array struct, di mana struct ke-N berisi semua elemen ke-N dari array input.
Sintaksis
array<struct<T, U, ...>> arrays_zip(array<T> <a>, array<U> <b>[, ...])Parameter
a dan b: wajib. Parameter ini menentukan sebuah array. T dalam array<T> dan U dalam array<U> menentukan tipe data elemen-elemen dalam array. Elemen-elemen tersebut dapat berupa tipe data apa pun.
Berikut adalah tipe data yang 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
Sebuah nilai dengan tipe ARRAY dikembalikan. Nilai kembali bervariasi berdasarkan aturan berikut:
Struct ke-N dalam array struct yang dihasilkan berisi semua elemen ke-N dari array input. Jika sebuah array memiliki kurang dari N elemen, null digunakan sebagai elemen ke-N dari array tersebut.
Jika satu atau lebih array input bernilai null, maka null akan dikembalikan.
Contoh
Contoh 1: Menggabungkan
array(1, 2, 3)danarray(2, 3, 4)menjadi array struct. Contoh pernyataan:-- Nilai kembali adalah [{0:1, 1:2}, {0:2, 1:3}, {0:3, 1:4}]. select arrays_zip(array(1, 2, 3), array(2, 3, 4));Contoh 2: Menggabungkan
array(1, 2, 3)danarray(4, 5)menjadi array struct. Contoh pernyataan:-- Nilai kembali adalah [{0:1, 1:4}, {0:2, 1:5}, {0:3, 1:null}]. select arrays_zip(array(1, 2, 3), array(4, 5));
Fungsi terkait
ARRAYS_ZIP adalah fungsi tipe kompleks. Untuk informasi lebih lanjut tentang fungsi-fungsi yang digunakan untuk memproses data tipe data kompleks seperti ARRAY, MAP, STRUCT, dan JSON, lihat Fungsi Tipe Kompleks.