Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

quantilesExactWeighted

quantilesExactWeighted

Introduced in:v1.1.0

精确计算数值数据序列在不同级别上的多个分位数,并同时考虑每个元素的权重。

此函数等同于 quantileExactWeighted,但支持在单次遍历中计算多个分位数级别,因此比逐个调用分位数函数更高效。

Syntax

quantilesExactWeighted(level1, level2, ...)(expr, weight)

参数

  • level — 分位数的级别。一个或多个介于 0 到 1 之间的常量浮点数。建议将 level 的值设在 [0.01, 0.99] 范围内。Float*

Arguments

返回值

按指定级别的顺序返回对应分位数的数组。对于数值数据类型,输出格式与输入格式一致。Array((U)Int*)Array(Int128)Array(UInt128)Array(Int256)Array(UInt256)Array(Float*)Array(Decimal*)Array(Date)Array(DateTime)Array(DateTime64)

示例

计算多个精确加权分位数

SELECT quantilesExactWeighted(0.25, 0.5, 0.75)(number, 1) FROM numbers(10)
┌─quantilesExactWeighted(0.25, 0.5, 0.75)(number, 1)─┐
│ [2,4,7]                                            │
└────────────────────────────────────────────────────┘
Navigation