Window
DuckDB
SUM_WINDOW
Menghitung running sum atau cumulative sum menggunakan window function. Berbeda dengan SUM aggregate biasa, SUM sebagai window function menghitung total berjalan per baris.
Tipe hasil:
NUMERICSyntax
SQL
SUM(expression) OVER ([PARTITION BY ...] [ORDER BY ...] [frame_clause])Parameter
expressionNUMERICwajib
Kolom atau ekspresi numerik yang akan dijumlahkan
Contoh Penggunaan
Running Total Penjualan
SQL
1 SELECT 2 date, 3 amount, 4 SUM(amount) OVER (ORDER BY date) as running_total 5 FROM sales 6 ORDER BY date;
Menghitung running total penjualan berdasarkan tanggal.
Hasil
| date | amount | running_total |
|---|---|---|
| 2024-01-01 | 100 | 100 |
| 2024-01-02 | 150 | 250 |
| 2024-01-03 | 200 | 450 |
Running Total per Kategori
SQL
1 SELECT 2 category, 3 date, 4 amount, 5 SUM(amount) OVER (PARTITION BY category ORDER BY date) as category_running_total 6 FROM sales;
Running total terpisah untuk setiap kategori.
Hasil
| category | date | amount | category_running_total |
|---|---|---|---|
| A | 2024-01-01 | 100 | 100 |
| A | 2024-01-02 | 150 | 250 |
| B | 2024-01-01 | 200 | 200 |