Freigeben über


kll_merge_agg_float Aggregatfunktion

Gilt für:check marked yes Databricks SQL check marked yes Databricks Runtime 18.0 and above

Verwendet mehrere KLL-Skizzenpuffer (K-Linear-Logarithmic) für die ungefähre Quantileschätzung für Gleitkommadaten mit einfacher Genauigkeit und verbindet sie mit einem Ergebnispuffer.

Syntax

kll_merge_agg_float ( sketch [, k ] )

Argumente

  • Skizze: Eine KLL-Skizze im Binärformat (z. B. aus kll_sketch_agg_float).
  • k: Eine optionale INTEGER Literalsteuerungsskizzengenauigkeit. Muss zwischen 8 und 65535 sein. Standardwert: 200. Höhere Werte bieten eine bessere Genauigkeit, verwenden aber mehr Arbeitsspeicher.

Rückkehr

Ein BINARY Wert, der die zusammengeführte serialisierte KLL-Skizze für Gleitkommadaten mit einfacher Genauigkeit enthält.

Hinweise

  • Wenn k keine Angabe erfolgt, übernimmt die zusammengeführte Skizze den k-Wert aus der ersten Eingabeskizze.
  • Der Zusammenführungsvorgang behandelt Eingabeskizzen mit unterschiedlichen k-Werten.
  • NULL Werte werden während der Aggregation ignoriert.
  • Verwenden Sie diese Funktion beim Zusammenführen mehrerer Skizzen in einem Aggregationskontext. Verwenden Sie zum Zusammenführen genau zwei Skizzen stattdessen die skalare kll_sketch_merge_float-Funktion .

Fehlermeldungen

Beispiele

-- 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