HLL_COUNT_MERGE_PARTIAL函數用於接收一個或多個HLL++資料結構(sketch)輸入,將儲存類型相同的HLL++ sketch合并為一個新的sketch。
注意事項
HLL_COUNT_EXTRACT/HLL_COUNT_MERGE/HLL_COUNT_MERGE_PARTIAL函數使用的BINARY資料需要來源於HLL_COUNT_INIT函數, 不能來源於其他系統或者其他方式。
命令格式
BINARY HLL_COUNT_MERGE_PARTIAL(BINARY <sketch>)參數說明
sketch:必填,BINARY類型。HLL++ sketch,由HLL_COUNT_INIT函數產生。
傳回值說明
返回BINARY類型的新sketch。若輸入為NULL,則返回NULL。
使用樣本
以下查詢返回一個 HLL++ sketch,用於統計所有國家中至少擁有一張發票的不同使用者的數量。
SELECT HLL_COUNT_MERGE_PARTIAL(HLL_sketch) AS distinct_customers_with_open_invoice
FROM
(
SELECT
country,
HLL_COUNT_INIT(customer_id) AS hll_sketch
FROM values
('UA', 'customer_id_1', 'invoice_id_11'),
('BR', 'customer_id_3', 'invoice_id_31'),
('CZ', 'customer_id_2', 'invoice_id_22'),
('CZ', 'customer_id_2', 'invoice_id_23'),
('BR', 'customer_id_3', 'invoice_id_31'),
('UA', 'customer_id_2', 'invoice_id_24')
t(country, customer_id, invoice_id)
GROUP BY country
);返回結果:
+--------------------------------------+
| distinct_customers_with_open_invoice |
+--------------------------------------+
| =02=01=0F=00=03=00=00=00=20s=8E=00=F0=8B=DD=00=98_$=03 |
+--------------------------------------+相關函數
HLL_COUNT_MERGE_PARTIAL函數屬於HyperLogLog++函數,MaxCompute支援一系列近似彙總的HyperLogLog++函數,更多相關函數請參見HyperLogLog++函數。