Aggregate

AVG

DuckDBDuckDB

Menghitung nilai rata-rata (average) dari nilai numerik dalam sebuah kolom. Mengabaikan nilai NULL dalam perhitungan.

Tipe hasil: DOUBLEDiperbarui: 6 Jan 2026

Syntax

SQL
AVG(expression) | AVG(DISTINCT expression)

Parameter

expressionnumericwajib

Kolom atau ekspresi numerik yang akan dihitung rata-ratanya

DISTINCTmodifieropsional

Menghitung rata-rata hanya dari nilai unik

Contoh Penggunaan

Rata-rata Harga Produk

SQL
1SELECT AVG(price) as avg_price
2FROM products;

Menghitung rata-rata harga semua produk.

Hasil
125000.50

Rata-rata dengan Pembulatan

SQL
1SELECT
2 category,
3 ROUND(AVG(rating), 2) as avg_rating,
4 COUNT(*) as total_reviews
5FROM reviews
6GROUP BY category;

Menghitung rata-rata rating per kategori, dibulatkan 2 decimal.

Hasil
categoryavg_ratingtotal_reviews
Electronics4.251523
Books4.52892
Clothing3.982341

AVG dengan FILTER untuk Perbandingan

SQL
1SELECT
2 AVG(salary) as overall_avg,
3 AVG(salary) FILTER (WHERE department = 'Engineering') as eng_avg,
4 AVG(salary) FILTER (WHERE department = 'Marketing') as mkt_avg
5FROM employees;

Membandingkan rata-rata gaji antar department dalam satu query.

Hasil
overall_avgeng_avgmkt_avg
8500000120000007500000

Fungsi Terkait