kll_sketch_get_quantile_double 函数

适用于:勾选为是 Databricks Runtime 18.0 及更高版本

从双重 KLL 草图中估计给定分位数排名(或多个排名)的值。

Syntax

kll_sketch_get_quantile_double ( sketch, rank )

Arguments

  • sketch BINARY:包含序列化 DOUBLE KLL 草图的表达式。
  • rank:表达式 DOUBLEARRAY<DOUBLE> 分位排名介于 0.0 和 1.0 之间,其中:
    • 0.0 是最小值,
    • 0.5 是中值,并且
    • 1.0 是最大值。

退货

  • 如果排名为 DOUBLE:返回一个 DOUBLE 表示估计分位数的值。
  • 如果排名是 ARRAY<DOUBLE>:则 ARRAY<DOUBLE> 将返回每个排名的分位数估计值。

注释

  • 排名必须介于 0.0 和 1.0 之间(含)。
  • 如果草图为空,则 NULL 返回。
  • 常见分位数:0.25(Q1)、0.5(中值)、0.75(第3季度)、0.95(P95)、0.99(P99)。

例子

> WITH sketch_data AS (
    SELECT kll_sketch_agg_double(value) AS sketch
    FROM VALUES (1.23), (2.34), (3.45) AS T(value)
  )
  SELECT kll_sketch_get_quantile_double(sketch, array(0.25, 0.75)) FROM sketch_data
  [1.23, 3.45]