Udostępnij za pośrednictwem


kll_merge_agg_float funkcja agregacji

Dotyczy:sprawdzanie oznaczone jako tak Sprawdzanie bazy danych Sql w usłudze Databricks oznaczone jako tak Databricks Runtime 18.0 lub nowszej

Używa wielu buforów szkicu KLL (K-Linear-Logarithmic) w celu przybliżonego oszacowania kwantylu dla danych zmiennoprzecinkowych o pojedynczej precyzji i scala je w jeden bufor wyników.

Składnia

kll_merge_agg_float ( sketch [, k ] )

Arguments

  • szkic: szkic KLL w formacie binarnym (na przykład z kll_sketch_agg_float).
  • k: Opcjonalny INTEGER literał kontrolujący dokładność szkicu. Musi należeć do przedziału od 8 do 65535. Wartość domyślna to 200. Wyższe wartości zapewniają lepszą dokładność, ale używają większej ilości pamięci.

Zwraca

Wartość zawierająca BINARY scalony serializowany szkic KLL dla danych zmiennoprzecinkowych o pojedynczej precyzji.

Notatki

  • Gdy k nie zostanie określony, scalony szkic przyjmuje wartość k z pierwszego szkicu wejściowego.
  • Operacja scalania obsługuje szkice wejściowe z różnymi wartościami k.
  • NULL wartości są ignorowane podczas agregacji.
  • Użyj tej funkcji podczas scalania wielu szkiców w kontekście agregacji. Aby scalić dokładnie dwa szkice, użyj funkcji kll_sketch_merge_float skalarnych.

Komunikaty o błędach

Przykłady

-- Merge sketches with default k=200
> SELECT kll_sketch_get_n_float(kll_merge_agg_float(sketch))
  FROM (
    SELECT kll_sketch_agg_float(col) AS sketch
    FROM VALUES (1), (2), (3) AS tab(col)
    UNION ALL
    SELECT kll_sketch_agg_float(col) AS sketch
    FROM VALUES (4), (5), (6) AS tab(col)
  ) t;
6.0