Tous les produits
Search
Centre de documentation

MaxCompute:HLL_COUNT_MERGE

Dernière mise à jour :Aug 10, 2026

La fonction HLL_COUNT_MERGE accepte une ou plusieurs structures de données HLL++ (sketch) en entrée, fusionne les sketches HLL++ de même type de stockage en un nouveau sketch et renvoie l'estimation de la cardinalité du sketch résultant.

Notes

HLL_COUNT_EXTRACT/HLL_COUNT_MERGE/HLL_COUNT_MERGE_PARTIAL Les données BINARY utilisées par ces fonctions doivent provenir de la fonction HLL_COUNT_INIT ; elles ne peuvent pas être issues d'autres systèmes ou d'autres méthodes.

Syntaxe

BIGINT HLL_COUNT_MERGE(BINARY <sketch>)

Paramètres

sketch : obligatoire, de type BINARY. Sketch HLL++ généré par la fonction HLL_COUNT_INIT.

  • Si le paramètre sketch est NULL, il est ignoré.

  • Chaque sketch doit être initialisé avec le même type. La tentative de fusion de sketches de types différents entraîne une erreur. Par exemple, il est impossible de fusionner des sketches générés à partir de données BIGINT avec des sketches générés à partir de données STRING.

Valeur de retour

Renvoie une estimation de la cardinalité de type BIGINT. Si le sketch résultant de la fusion est NULL, la fonction renvoie 0.

Exemple

Comptez le nombre de personnes physiques disposant d'au moins une facture dans tous les pays.

SELECT HLL_COUNT_MERGE(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
  );

Résultat renvoyé :

+--------------------------------------+
| distinct_customers_with_open_invoice |
+--------------------------------------+
| 3                                    |
+--------------------------------------+

Fonctions associées

La fonction HLL_COUNT_MERGE fait partie des fonctions HyperLogLog++. MaxCompute prend en charge une série de fonctions d'agrégation approximative HyperLogLog++. Pour plus d'informations sur les fonctions associées, consultez HyperLogLog++ Functions Overview.