Aggregate
DuckDB
ARRAY_AGG
Mengumpulkan nilai dari beberapa baris menjadi sebuah array/list. Di DuckDB, ARRAY_AGG dan LIST adalah sinonim.
Tipe hasil:
LIST (array)Diperbarui: 16 Mei 2026Syntax
SQL
ARRAY_AGG(expression [ORDER BY sort_expression])Parameter
expressionanywajib
Kolom atau ekspresi yang akan dikumpulkan ke dalam array
ORDER BYclauseopsional
Opsional. Menentukan urutan elemen dalam array
Contoh Penggunaan
Mengumpulkan ID ke dalam Array
SQL
1 SELECT ARRAY_AGG(id) 2 FROM products 3 WHERE category = 'Electronics';
Mengumpulkan semua ID produk elektronik ke dalam array.
Hasil
[1, 5, 8, 12]
Array dengan ORDER BY
SQL
1 SELECT 2 category, 3 ARRAY_AGG(name ORDER BY price DESC) as products_by_price 4 FROM products 5 GROUP BY category;
Mengelompokkan produk per kategori, diurutkan berdasarkan harga.
Hasil
| category | products_by_price |
|---|---|
| Electronics | [MacBook, iPhone, AirPods] |
| Clothing | [Jacket, T-Shirt, Cap] |
UNNEST untuk Membuka Array
SQL
1 WITH product_arrays AS ( 2 SELECT category, ARRAY_AGG(name) as names 3 FROM products 4 GROUP BY category 5 ) 6 SELECT category, UNNEST(names) as product_name 7 FROM product_arrays;
Menggunakan UNNEST untuk membuka array kembali menjadi baris.
Pertanyaan Umum tentang ARRAY_AGG
Apa itu fungsi ARRAY_AGG di DuckDB?
Mengumpulkan nilai dari beberapa baris menjadi sebuah array/list. Di DuckDB, ARRAY_AGG dan LIST adalah sinonim. Di DuckDB, fungsi ARRAY_AGG termasuk dalam kelompok fungsi yang sering digunakan untuk mengolah dan menganalisis data secara efisien.
Bagaimana cara menggunakan ARRAY_AGG di DuckDB?
Gunakan sintaks berikut: ARRAY_AGG(expression [ORDER BY sort_expression]). Pastikan argumen yang dimasukkan sudah sesuai dengan tipe data yang diharapkan.
Apa nilai yang dikembalikan oleh fungsi ARRAY_AGG?
Fungsi ARRAY_AGG mengembalikan nilai bertipe LIST (array). Pastikan tipe data hasil sudah sesuai dengan kebutuhan query atau formula kamu. Jika input mengandung nilai NULL, perilaku fungsi dapat berbeda — selalu periksa dokumentasi untuk memastikan hasilnya sesuai ekspektasi.
Apa saja parameter fungsi ARRAY_AGG?
Fungsi ini memiliki 1 parameter wajib dan 1 parameter opsional. Parameter yang digunakan: expression (any, wajib): Kolom atau ekspresi yang akan dikumpulkan ke dalam array; ORDER BY (clause, opsional): Opsional. Menentukan urutan elemen dalam array.