Window
DuckDB
CUME_DIST
Menghitung distribusi kumulatif - proporsi baris yang memiliki nilai kurang dari atau sama dengan baris saat ini.
Tipe hasil:
DOUBLEDiperbarui: 6 Jan 2026Syntax
SQL
CUME_DIST() OVER ([PARTITION BY col] ORDER BY col)Parameter
ORDER BYclausewajib
Menentukan urutan untuk distribusi kumulatif
PARTITION BYclauseopsional
Opsional. Membagi hasil menjadi partisi
Contoh Penggunaan
Distribusi Kumulatif Score
SQL
1 SELECT 2 name, 3 score, 4 CUME_DIST() OVER (ORDER BY score) as cume_dist, 5 ROUND(CUME_DIST() OVER (ORDER BY score) * 100, 1) as cumulative_pct 6 FROM students;
Menghitung berapa persen siswa dengan score <= saat ini.
Hasil
| name | score | cume_dist | cumulative_pct |
|---|---|---|---|
| Ani | 70 | 0.25 | 25.0 |
| Budi | 80 | 0.50 | 50.0 |
| Citra | 90 | 0.75 | 75.0 |
| Deni | 95 | 1.00 | 100.0 |
Perbandingan PERCENT_RANK vs CUME_DIST
SQL
1 SELECT 2 name, 3 score, 4 PERCENT_RANK() OVER (ORDER BY score) as prank, 5 CUME_DIST() OVER (ORDER BY score) as cdist 6 FROM students;
Membandingkan kedua fungsi untuk memahami perbedaannya.
Hasil
| name | score | prank | cdist |
|---|---|---|---|
| Ani | 70 | 0.00 | 0.25 |
| Budi | 80 | 0.33 | 0.50 |
| Citra | 90 | 0.67 | 0.75 |
| Deni | 95 | 1.00 | 1.00 |
Revenue Milestone Analysis
SQL
1 SELECT 2 month, 3 revenue, 4 CUME_DIST() OVER (ORDER BY revenue) as revenue_percentile 5 FROM monthly_revenue 6 ORDER BY revenue;
Menganalisis distribusi revenue bulanan.