Aggregate
Snowflake
ARRAY_AGG
Mengumpulkan nilai dari beberapa baris menjadi sebuah ARRAY Snowflake. Berguna untuk mengumpulkan data dalam format semi-structured.
Tipe hasil:
ARRAYDiperbarui: 6 Jan 2026Syntax
SQL
ARRAY_AGG(expression) [WITHIN GROUP (ORDER BY sort_expression)]Parameter
expressionanywajib
Kolom atau ekspresi yang akan dikumpulkan ke dalam array
WITHIN GROUP (ORDER BY)clauseopsional
Menentukan urutan elemen dalam array
Contoh Penggunaan
Mengumpulkan ID ke dalam Array
SQL
1 SELECT ARRAY_AGG(product_id) 2 FROM orders 3 WHERE customer_id = 'CUST-001';
Mengumpulkan semua product_id dari orders customer tertentu ke dalam array.
Hasil
["PROD-001", "PROD-005", "PROD-008"]
Array dengan ORDER BY
SQL
1 SELECT 2 category, 3 ARRAY_AGG(name) WITHIN GROUP (ORDER BY price DESC) as products_by_price 4 FROM products 5 GROUP BY category;
Mengelompokkan produk per kategori dalam array, diurutkan berdasarkan harga tertinggi.
Hasil
| CATEGORY | PRODUCTS_BY_PRICE |
|---|---|
| Electronics | ["MacBook", "iPhone", "AirPods"] |
| Clothing | ["Jacket", "T-Shirt", "Cap"] |
ARRAY_AGG dengan DISTINCT
SQL
1 SELECT 2 customer_id, 3 ARRAY_AGG(DISTINCT product_category) as purchased_categories 4 FROM orders 5 GROUP BY customer_id;
Mengumpulkan kategori produk unik yang dibeli setiap customer.
Hasil
| CUSTOMER_ID | PURCHASED_CATEGORIES |
|---|---|
| CUST-001 | ["Electronics", "Clothing"] |
| CUST-002 | ["Books", "Electronics"] |
Pertanyaan Umum tentang ARRAY_AGG
Apa itu fungsi ARRAY_AGG di Snowflake?
Mengumpulkan nilai dari beberapa baris menjadi sebuah ARRAY Snowflake. Berguna untuk mengumpulkan data dalam format semi-structured. Di Snowflake, fungsi ARRAY_AGG termasuk dalam kelompok fungsi yang sering digunakan untuk mengolah dan menganalisis data secara efisien.
Bagaimana cara menggunakan ARRAY_AGG di Snowflake?
Gunakan sintaks berikut: ARRAY_AGG(expression) [WITHIN GROUP (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 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; WITHIN GROUP (ORDER BY) (clause, opsional): Menentukan urutan elemen dalam array.