Applies to: ✅ Data 360 SQL ✅ Tableau Hyper API
Computes a continuous percentile, interpolating between adjacent input values if needed.
Syntax
percentile_cont(<fraction>) WITHIN GROUP (ORDER BY <sort_expression>)
Arguments
Required
<fraction>: Adouble precisionvalue between 0 and 1 specifying the percentile to compute.<sort_expression>: An expression ofdouble precisionorintervaltype.
Returns
Returns the same type as the sort expression. Returns NULL if the fraction is NULL.
Considerations
- This is an ordered-set aggregate function.
- NULL values in the sorted input are ignored.
- Interpolates between adjacent values when the exact percentile falls between two data points.
- Use
PERCENTILE_DISCfor discrete percentiles without interpolation.
Examples
Calculate Median
Find the median (50th percentile).
SELECT percentile_cont(0.5) WITHIN GROUP (ORDER BY salary) AS median_salary
FROM employees;
Calculate Quartiles
Find the 25th and 75th percentiles.
SELECT
percentile_cont(0.25) WITHIN GROUP (ORDER BY score) AS q1,
percentile_cont(0.5) WITHIN GROUP (ORDER BY score) AS median,
percentile_cont(0.75) WITHIN GROUP (ORDER BY score) AS q3
FROM test_results;
Percentile by Group
Calculate percentiles for each group.
SELECT department,
percentile_cont(0.5) WITHIN GROUP (ORDER BY salary) AS median_salary
FROM employees
GROUP BY department;