Sdílet prostřednictvím


Funkce hll_union

Platí pro: zaškrtnutí označeného ano Databricks SQL zaškrtnutí označeného ano Databricks Runtime 13.3 LTS a vyšší

Tato funkce využívá algoritmus HyperLogLog ke kombinování dvou skic do jediné skicy.

Dotazy můžou použít výsledné vyrovnávací paměti k výpočtu přibližných jedinečných počtů po celých číslech s funkcí hll_sketch_estimate .

Implementace používá knihovnu Apache Datasketches. Další informace najdete v HLL.

Syntaxe

hll_union ( expr1, expr2 [, allowDifferentLgConfigK ] )

Argumenty

  • exprN: Výraz BINARY s náčrtkem vygenerovaným hll_sketch_agg.
  • allowDifferentLgConfigK: Volitelný BOOLEAN výraz, který určuje, zda povolit sloučení dvou skic s různými hodnotami lgConfigK. Výchozí hodnota je false.

Návraty

Vyrovnávací BINARY paměť obsahující skicu HyperLogu vypočítanou v důsledku kombinování vstupních výrazů.

allowDifferentLgConfigK Pokud je parametr pravdivý, použije skica výsledku menší ze dvou zadaných lgConfigK hodnot.

Příklady

> 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