Window
DuckDB
COUNT_WINDOW
Menghitung running count atau jumlah kumulatif menggunakan window function. Berguna untuk penomoran dan analisis frekuensi.
Tipe hasil:
BIGINTSyntax
SQL
COUNT(*|expression) OVER ([PARTITION BY ...] [ORDER BY ...])Parameter
*|expressionANYwajib
* untuk semua baris, atau kolom untuk non-NULL values
Contoh Penggunaan
Running Count dan Persentase
SQL
1 SELECT 2 name, 3 sales, 4 COUNT(*) OVER (ORDER BY sales DESC) as rank_by_sales, 5 COUNT(*) OVER () as total_count 6 FROM employees;
Menghitung ranking dan total berdasarkan penjualan.
Hasil
| name | sales | rank_by_sales | total_count |
|---|---|---|---|
| Alice | 500 | 1 | 4 |
| Bob | 400 | 2 | 4 |
| Carol | 300 | 3 | 4 |
Count per Partition
SQL
1 SELECT 2 department, 3 name, 4 COUNT(*) OVER (PARTITION BY department) as dept_size 5 FROM employees;
Menampilkan jumlah karyawan per departemen di setiap baris.
Hasil
| department | name | dept_size |
|---|---|---|
| Sales | Alice | 2 |
| Sales | Bob | 2 |
| Tech | Carol | 3 |