Window

AVG_WINDOW

DuckDBDuckDB

Menghitung moving average atau running average menggunakan window function. Sangat berguna untuk smoothing data dan analisis tren.

Tipe hasil: DOUBLEDiperbarui: 16 Mei 2026

Syntax

SQL
AVG(expression) OVER ([PARTITION BY ...] [ORDER BY ...] [frame_clause])

Parameter

expressionNUMERICwajib

Kolom atau ekspresi numerik yang akan dihitung rata-ratanya

Contoh Penggunaan

3-Day Moving Average

SQL
1SELECT
2 date,
3 price,
4 ROUND(AVG(price) OVER (
5 ORDER BY date
6 ROWS BETWEEN 2 PRECEDING AND CURRENT ROW
7 ), 2) as moving_avg_3d
8FROM stock_prices;

Menghitung 3-day moving average harga saham.

Hasil
datepricemoving_avg_3d
2024-01-01100100.00
2024-01-02105102.50
2024-01-0398101.00

Running Average

SQL
1SELECT
2 date,
3 sales,
4 ROUND(AVG(sales) OVER (ORDER BY date), 2) as running_avg
5FROM daily_sales;

Rata-rata berjalan dari awal sampai baris saat ini.

Hasil
datesalesrunning_avg
2024-01-01100100.00
2024-01-02200150.00
2024-01-03150150.00

Pertanyaan Umum tentang AVG_WINDOW

Apa itu fungsi AVG_WINDOW di DuckDB?
Menghitung moving average atau running average menggunakan window function. Sangat berguna untuk smoothing data dan analisis tren. Di DuckDB, fungsi AVG_WINDOW termasuk dalam kelompok fungsi yang sering digunakan untuk mengolah dan menganalisis data secara efisien.
Bagaimana cara menggunakan AVG_WINDOW di DuckDB?
Gunakan sintaks berikut: AVG(expression) OVER ([PARTITION BY ...] [ORDER BY ...] [frame_clause]). Pastikan argumen yang dimasukkan sudah sesuai dengan tipe data yang diharapkan.
Apa nilai yang dikembalikan oleh fungsi AVG_WINDOW?
Fungsi AVG_WINDOW mengembalikan nilai bertipe DOUBLE. 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 AVG_WINDOW?
Fungsi ini memiliki 1 parameter wajib. Parameter yang digunakan: expression (NUMERIC, wajib): Kolom atau ekspresi numerik yang akan dihitung rata-ratanya.