Aggregate
DuckDB
QUANTILE_CONT
Menghitung kuantil kontinyu dengan interpolasi linear. Alias dari QUANTILE yang eksplisit menunjukkan metode continuous interpolation.
Tipe hasil:
DOUBLE (atau LIST of DOUBLE jika input quantile adalah array)Diperbarui: 6 Jan 2026Syntax
SQL
QUANTILE_CONT(expression, quantile) | QUANTILE_CONT(expression, [q1, q2, ...])Parameter
expressionnumericwajib
Kolom atau ekspresi numerik yang akan dihitung kuantilnya
quantileDOUBLE atau LISTwajib
Posisi kuantil (0.0 sampai 1.0) atau array of quantiles
Contoh Penggunaan
Continuous Percentile Calculation
SQL
1 SELECT 2 department, 3 QUANTILE_CONT(salary, 0.5) as median_salary, 4 QUANTILE_CONT(salary, 0.9) as p90_salary 5 FROM employees 6 GROUP BY department;
Menghitung median dan p90 salary dengan interpolasi kontinyu.
Hasil
| department | median_salary | p90_salary |
|---|---|---|
| IT | 17500000.00 | 32500000.00 |
| Sales | 12750000.00 | 28000000.00 |
| HR | 10250000.00 | 18500000.00 |
Interpolated Quartiles
SQL
1 SELECT 2 product_type, 3 QUANTILE_CONT(rating, [0.25, 0.5, 0.75]) as rating_quartiles 4 FROM product_reviews 5 GROUP BY product_type;
Menghitung IQR (Interquartile Range) untuk rating produk.
Hasil
| product_type | rating_quartiles |
|---|---|
| Electronics | [3.75, 4.20, 4.65] |
| Books | [3.50, 4.00, 4.50] |
Performance Monitoring dengan Continuous Percentiles
SQL
1 SELECT 2 service_name, 3 ROUND(QUANTILE_CONT(latency_ms, 0.50), 2) as p50, 4 ROUND(QUANTILE_CONT(latency_ms, 0.95), 2) as p95, 5 ROUND(QUANTILE_CONT(latency_ms, 0.99), 2) as p99 6 FROM service_metrics 7 WHERE timestamp >= NOW() - INTERVAL '1 hour' 8 GROUP BY service_name 9 HAVING QUANTILE_CONT(latency_ms, 0.99) > 100;
Monitoring service latency dengan alert jika p99 > 100ms.
Hasil
| service_name | p50 | p95 | p99 |
|---|---|---|---|
| auth-service | 15.25 | 78.50 | 125.75 |
| api-gateway | 22.10 | 95.25 | 180.50 |