Udostępnij za pośrednictwem


Funkcja hll_union_agg

Dotyczy: zaznacz pole wyboru oznaczone jako tak Databricks SQL zaznacz pole wyboru oznaczone jako tak Databricks Runtime 13.3 LTS i nowsze

Ta funkcja wykorzystuje algorytm HyperLogLog , aby połączyć grupę szkiców w jeden.

Zapytania mogą używać wynikowych do obliczania przybliżonych unikatowych liczb za pomocą funkcji hll_sketch_estimate .

Implementacja używa biblioteki Apache Datasketches. Aby uzyskać więcej informacji, zobacz HLL .

Składnia

hll_union_agg ( expr [, allowDifferentLgConfigK ] )

Tę funkcję można również wywołać jako funkcję okna przy użyciu klauzuli OVER .

Argumenty

  • exprBINARY: wyrażenie zawierające szkic wygenerowany przez hll_sketch_agg.
  • allowDifferentLgConfigK: opcjonalne BOOLEAN wyrażenie stałe kontrolujące, czy zezwalać na scalanie szkiców z różnymi wartościami lgConfigK. Wartość domyślna to false.

Zwraca

Bufor BINARY zawierający szkic funkcji HyperLogLog obliczony w wyniku połączenia wyrażeń wejściowych tej samej grupy.

allowDifferentLgConfigK Gdy parametr ma wartość true, szkic wyniku używa mniejszych z dwóch podanych lgConfigK wartości.

Przykłady

> SELECT hll_sketch_estimate(hll_union_agg(sketch, true))
    FROM (SELECT hll_sketch_agg(col) as sketch
            FROM VALUES (1) AS tab(col)
          UNION ALL
          SELECT hll_sketch_agg(col, 20) as sketch
            FROM VALUES (1) AS tab(col));
  1

> SELECT hll_sketch_estimate(hll_union_agg(sketch, false))
    FROM (SELECT hll_sketch_agg(col) as sketch
            FROM VALUES (1) AS tab(col)
          UNION ALL
          SELECT hll_sketch_agg(col, 20) as sketch
            FROM VALUES (1) AS tab(col));
  error