すべてのプロダクト
Search
ドキュメントセンター

MaxCompute:HLL_COUNT_EXTRACT

最終更新日:Dec 09, 2025

HLL_COUNT_EXTRACT 関数は、HLL++ データ構造 (スケッチ) からカーディナリティ推定値を計算します。

注意事項

HLL_COUNT_EXTRACTHLL_COUNT_MERGE、および HLL_COUNT_MERGE_PARTIAL 関数で使用される `BINARY` データは、HLL_COUNT_INIT 関数によって生成される必要があります。他のシステムやメソッドからのデータは使用できません。

構文

BIGINT HLL_COUNT_EXTRACT(BINARY <sketch>)

パラメーター

sketch:必須。HLL++ スケッチを表す `BINARY` 値。このスケッチは、HLL_COUNT_INIT 関数によって生成される必要があります。

戻り値

カーディナリティ推定値を `BIGINT` 型で返します。入力パラメーターの sketch が `NULL` の場合、この関数は 0 を返します。

各国で少なくとも 1 つの請求書を持つユニーク顧客数をクエリします。

SELECT
  country,
  HLL_COUNT_EXTRACT(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
  );

クエリは次の結果を返します:

+---------+--------------------------------------+
| country | distinct_customers_with_open_invoice |
+---------+--------------------------------------+
| BR      | 1                                    |
| CZ      | 1                                    |
| UA      | 2                                    |
+---------+--------------------------------------+

関連関数

HLL_COUNT_EXTRACT は、MaxCompute が近似集約のために提供するいくつかの HyperLogLog++ 関数の 1 つです。詳細については、「HyperLogLog++ 関数」をご参照ください。