quantilesExactInclusive
Exactly computes multiple [quantiles](https://en.
Exactly computes multiple quantiles of a numeric data sequence at different levels simultaneously using the inclusive method.
This function is equivalent to quantileExactInclusive but allows computing multiple quantile levels in a single pass, which is more efficient than calling individual quantile functions.
This function uses the inclusive method for calculating quantiles, as described in the R-7 method. This is equivalent to PERCENTILE.INC Excel function.
To get exact values, all the passed values are combined into an array, which is then partially sorted.
The sorting algorithm's complexity is O(N·log(N)), where N = std::distance(first, last) comparisons.
Syntax
quantilesExactInclusive(level1, level2, ...)(expr)Parameters
level— Levels of quantiles. Constant floating-point numbers from 0 to 1 (inclusive). We recommend usinglevelvalues in the range of[0.01, 0.99].Float*
Arguments
expr— Expression over the column values resulting in numeric data types, Date or DateTime.(U)Int*orFloat*orDecimal*orDateorDateTime
Returned value
Array of quantiles of the specified levels in the same order as the levels were specified. Array(Float64)
Examples
Computing multiple exact inclusive quantiles
CREATE TABLE num AS numbers(1000);
SELECT quantilesExactInclusive(0.25, 0.5, 0.75, 0.9, 0.95, 0.99, 0.999)(number) FROM num;┌─quantilesExactInclusive(0.25, 0.5, 0.75, 0.9, 0.95, 0.99, 0.999)(number)─┐
│ [249.75,499.5,749.25,899.1,949.05,989.01,998.001] │
└──────────────────────────────────────────────────────────────────────────┘Introduced in version 20.1.