hll_union
函式
適用於: Databricks SQL Databricks Runtime 13.3 LTS 和更新版本
此函式會 利用 HyperLogLog 演算法,將兩個草圖結合成單一草圖。
查詢可以使用產生的緩衝區來計算與 hll_sketch_estimate 函式一樣長整數的近似唯一計數。
實作會使用 Apache Datasketches 連結庫。 如需詳細資訊,請參閱 HLL 。
語法
hll_union ( expr1, expr2 [, allowDifferentLgConfigK ] )
引數
exprN
BINARY
:包含hll_sketch_agg所產生草圖的表達式。allowDifferentLgConfigK
:選擇性BOOLEAN
表達式,控制是否允許合併兩個草圖與不同的 lgConfigK 值。 預設值為 false。
傳回
BINARY
緩衝區,包含結合輸入表達式所計算的 HyperLogLog 草圖。
allowDifferentLgConfigK
當參數為 true 時,結果草圖會使用兩個提供lgConfigK
值中的較小值。
範例
> SELECT hll_sketch_estimate(
hll_union(
hll_sketch_agg(col1),
hll_sketch_agg(col2)))
FROM VALUES
(1, 4),
(1, 4),
(2, 5),
(2, 5),
(3, 6) AS tab(col1, col2);
6
> SELECT hll_sketch_estimate(
hll_union(
hll_sketch_agg(col1, 4),
hll_sketch_agg(col2, 21)))
FROM VALUES
(1, 4),
(1, 4),
(2, 5),
(2, 5),
(3, 6) AS tab(col1, col2);
error