hll_union-functie

Van toepassing op:vinkje als ja aan Databricks SQL vinkje als ja aan Databricks Runtime 13.3 LTS en hoger

Deze functie maakt gebruik van het HyperLogLog-algoritme om twee schetsen te combineren tot één schets.

Query's kunnen de resulterende buffers gebruiken om geschatte unieke aantallen te berekenen zolang gehele getallen met de hll_sketch_estimate functie.

De implementatie maakt gebruik van de Apache Datasketches-bibliotheek. Zie HLL voor meer informatie.

Syntaxis

hll_union ( expr1, expr2 [, allowDifferentLgConfigK ] )

Argumenten

  • exprN: Een BINARY expressie met een schets die wordt gegenereerd door hll_sketch_agg.
  • allowDifferentLgConfigK: Een optionele BOOLEAN expressie die bepaalt of het samenvoegen van twee schetsen met verschillende lgConfigK-waarden is toegestaan. De standaardwaarde is false.

Retouren

Een BINARY buffer met de HyperLogLog-schets die is berekend als gevolg van het combineren van de invoerexpressies.

Wanneer de allowDifferentLgConfigK parameter waar is, gebruikt de resultaatschets de kleinere van de twee opgegeven lgConfigK waarden.

Voorbeelden

> 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