QUANTILE_CONT() GROUP BY ...

All functions > GROUP BY > QUANTILE_CONT() GROUP BY ...

Returns the continuous quantile of the group at the given probability in (0, 1); result type is DOUBLE for numeric inputs and matches the expression type for DATE or TIMESTAMP.

Syntax

QUANTILE_CONT(expr, quantile)
 [ FILTER (WHERE condition) ]
  [ GROUP BY feature [, feature ...] ]

Notes

  • NULL values are ignored where the underlying aggregate skips NULLs
  • Can be used with FILTER (WHERE condition) and GROUP BY like other aggregates
  • quantile uses DOUBLE (for example 0.5e0 for the median along the continuous definition)

Examples

FeatureQL
SELECT
    -- Continuous 0.5 quantile over one group
    f1 := ZIP(ARRAY(1, 1, 1) AS g, ARRAY(1e0, 2e0, 3e0) AS x).TRANSFORM(
        SELECT QUANTILE_CONT(x, 0.5e0) GROUP BY g
    ).UNWRAP_ONE(),
    -- Continuous 0.5 quantile of DATE values
    f2 := ZIP(
        ARRAY(DATE '2024-01-01', DATE '2024-01-02', DATE '2024-01-03') AS d
    ).TRANSFORM(SELECT QUANTILE_CONT(d, 0.5e0)).UNWRAP_ONE(),
    -- Continuous 0.5 quantile of TIMESTAMP values
    f3 := ZIP(
        ARRAY(
            TIMESTAMP '2024-01-01 10:00:00',
            TIMESTAMP '2024-01-02 10:00:00',
            TIMESTAMP '2024-01-03 10:00:00'
        ) AS t
    ).TRANSFORM(SELECT QUANTILE_CONT(t, 0.5e0)).UNWRAP_ONE()
;
Result
f1 VARCHARf2 TIMESTAMPf3 TIMESTAMP
2.02024-01-02T00:00:002024-01-02T10:00:00

Last update at: 2026/06/20 10:08:10