kll_sketch_get_rank_double 函数

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

在双 KLL 草图中估计给定值的标准化排名(0.0 到 1.0)。

Syntax

kll_sketch_get_rank_double ( sketch, value )

Arguments

  • sketch BINARY:包含序列化 DOUBLE KLL 草图的表达式。
  • value:用于查找其排名的 DOUBLE 表达式或 ARRAY<DOUBLE> 值。

退货

  • 如果值为 DOUBLE:返回一个 DOUBLE 介于 0.0 和 1.0 之间的值,表示规范化排名。
  • 如果值为 ARRAY<DOUBLE>:返回 ARRAY<DOUBLE> 每个值的排名。

注释

  • 排名表示草图中小于或等于给定值的值的分数。
  • 如果所有草图值都大于输入值,则返回 0.0。
  • 如果所有草图值都小于或等于输入值,则返回 1.0。

例子

> WITH sketch_data AS (
    SELECT kll_sketch_agg_double(value) AS sketch
    FROM VALUES (1.0), (2.0), (3.0) AS T(value)
  )
  SELECT kll_sketch_get_rank_double(sketch, array(1.5, 2.5)) FROM sketch_data
  [0.33, 0.66]