跳转到主要内容

quantile

Introduced in:v1.1.0 计算数值数据序列的近似 quantile 此函数采用水库采样,水库大小最高为 8192,并使用随机数生成器进行采样。 结果是非确定性的。 如需获得精确的 分位数,请使用 quantileExact 函数。 在同一查询中使用多个 level 不同的 quantile* 函数时,它们的内部状态不会合并 (也就是说,查询效率会低于原本可达到的水平) 。 在这种情况下,请使用 quantiles 函数。 请注意,对于空的数值序列,quantile 将返回 NaN,而其 quantile* 变体则会根据具体变体返回 NaN 或该序列类型的默认值。 语法
quantile(level)(expr)
别名: median 参数
  • level — 可选。分位数级别,为 0 到 1 之间的常量浮点数。建议将 level 的值设在 [0.01, 0.99] 范围内。默认值:0.5。当 level=0.5 时,该函数计算中位数。Float
参数项 返回值 指定级别的近似分位数。Float64DateDateTime 示例 计算分位数
Query
CREATE TABLE t (val UInt32) ENGINE = Memory;
INSERT INTO t VALUES (1), (1), (2), (3);

SELECT quantile(val) FROM t;
Response
┌─quantile(val)─┐
│           1.5 │
└───────────────┘
另请参阅
最后修改于 2026年6月10日