跳转到主要内容

quantileDD

引入版本:v24.1.0 计算样本的近似分位数,并具有相对误差保证。 其实现方式是构建一个 DD 语法
quantileDD(relative_accuracy, [level])(expr)
别名: medianDD 参数
  • relative_accuracy — 分位数的相对精度。取值范围为 0 到 1。sketch 的大小取决于数据范围和相对精度:范围越大、相对精度越小,sketch 就越大。sketch 的内存占用粗略估算为 log(max_value/min_value)/relative_accuracy。建议取值为 0.001 或更高。Float*
  • level — 可选。分位数级别。取值范围为 0 到 1。默认值:0.5。Float*
Arguments 返回值 指定级别的近似分位数。Float64 示例 使用 DD sketch 计算分位数
Query
CREATE TABLE example_table (a UInt32, b Float32) ENGINE = Memory;
INSERT INTO example_table VALUES (1, 1.001), (2, 1.002), (3, 1.003), (4, 1.004);

SELECT quantileDD(0.01, 0.75)(a), quantileDD(0.01, 0.75)(b) FROM example_table;
Response
┌─quantileDD(0.01, 0.75)(a)─┬─quantileDD(0.01, 0.75)(b)─┐
│        2.974233423476717  │                      1.01 │
└───────────────────────────┴───────────────────────────┘
另请参阅
最后修改于 2026年6月12日