HLL_COMBINE 函数 - Amazon Redshift

HLL_COMBINE 函数

HLL_COMBINE 聚合函数返回一个 HLLSKETCH 数据类型,该数据类型将所有的输入 HLLSKETCH 值合并。

两个或多个 HyperLogLog 草图的组合是一个新的 HLLSKETCH,它封装了有关每个输入草图所表示的不同值的并集的信息。合并草图后,Amazon Redshift 会提取两个或多个数据集的并集的基数。有关如何合并多个草图的更多信息,请参阅示例:通过合并多个草图返回 HyperLogLog 草图

语法

HLL_COMBINE (hllsketch_expression)

参数

hllsketch_expression

计算结果为 HLLSKETCH 类型的任何有效表达式(如列名称)。输入值为 HLLSKETCH 数据类型。

返回类型

HLL_COMBINE 函数返回一个 HLLSKETCH 类型。

示例

以下示例返回表 hll_table 中的合并 HLLSKETCH 值。

CREATE TABLE a_table(an_int INT, b_int INT); INSERT INTO a_table VALUES (1,1), (2,1), (3,1), (4,1), (1,2), (2,2), (3,2), (4,2), (5,2), (6,2); CREATE TABLE hll_table (sketch HLLSKETCH); INSERT INTO hll_table select hll_create_sketch(an_int) from a_table group by b_int; SELECT hll_combine(sketch) AS sketches FROM hll_table; sketches ---------------------------------------------------------------------------------------------------------------------------- {"version":1,"logm":15,"sparse":{"indices":[20812342,20850007,22362299,40314817,42650774,47158030],"values":[1,2,1,3,2,1]}} (1 row)