Aggregate
DuckDB
LIST
Mengumpulkan nilai dari banyak baris menjadi satu list (array). Alias dari ARRAY_AGG yang lebih natural di DuckDB.
Tipe hasil:
LIST (array of input type)Diperbarui: 6 Jan 2026Syntax
SQL
LIST(expression) | LIST(expression ORDER BY ...)Parameter
expressionanywajib
Kolom atau ekspresi yang nilainya akan dikumpulkan ke dalam list
Contoh Penggunaan
Mengumpulkan Nilai ke List
SQL
1 SELECT 2 department, 3 LIST(employee_name) as employees 4 FROM staff 5 GROUP BY department;
Mengumpulkan semua nama karyawan per departemen ke dalam list.
Hasil
| department | employees |
|---|---|
| Sales | [Budi, Ani, Dewi] |
| IT | [Eko, Fitri, Gita, Hadi] |
| HR | [Ika, Joko] |
LIST dengan ORDER BY
SQL
1 SELECT 2 category, 3 LIST(product_name ORDER BY price DESC) as products_by_price 4 FROM products 5 GROUP BY category;
Mengumpulkan produk yang diurutkan berdasarkan harga tertinggi.
Hasil
| category | products_by_price |
|---|---|
| Electronics | [Laptop, Tablet, Phone, Mouse] |
| Furniture | [Sofa, Table, Chair] |
LIST untuk Nested JSON
SQL
1 SELECT 2 order_id, 3 customer_name, 4 LIST({ 5 'product': product_name, 6 'qty': quantity, 7 'price': unit_price 8 }) as items 9 FROM orders 10 JOIN order_items USING (order_id) 11 GROUP BY order_id, customer_name;
Membuat struktur nested dengan list of structs untuk JSON export.
Hasil
| order_id | customer_name | items |
|---|---|---|
| 1001 | Budi | [{'product': 'Laptop', 'qty': 1, ...}] |