Condividi tramite


theta_union_agg funzione di aggregazione

Si applica a:check contrassegnato come sì controllo SQL di Databricks contrassegnato come sì Databricks Runtime 18.0 e versioni successive

Utilizza più buffer di Sketch Theta e li unisce usando l'unione impostata in un unico buffer dei risultati. Utilizzare questa funzione per combinare schizzi di partizioni o periodi di tempo diversi.

Sintassi

theta_union_agg ( sketch [, lgNomEntries ] )

Arguments

  • sketch: A Theta Sketch in formato binario (ad esempio dalla theta_sketch_agg funzione di aggregazione).
  • lgNomEntries: valore letterale facoltativo INTEGER che specifica il log-base-2 delle voci nominale per il buffer di unione. Deve essere compreso tra 4 e 26 inclusi. Il valore predefinito è 12. I valori più elevati offrono una maggiore precisione, ma usano più memoria.

Restituzioni

Valore BINARY contenente l'oggetto Theta Sketch serializzato unito che rappresenta l'unione di tutti gli schizzi di input.

Note

  • L'operazione di unione gestisce gli schizzi di input con valori diversi lgNomEntries .
  • NULL i valori vengono ignorati durante l'aggregazione.
  • Per unire esattamente due schizzi, usare invece la funzione funzione scalaretheta_union.

Messaggi di errore

Esempi

-- Merge sketches from different groups
> SELECT theta_sketch_estimate(theta_union_agg(sketch)) FROM (
    SELECT theta_sketch_agg(col) AS sketch FROM VALUES (1), (2), (3) AS tab(col)
    UNION ALL
    SELECT theta_sketch_agg(col) AS sketch FROM VALUES (3), (4), (5) AS tab(col)
  ) t;
5

-- Merge sketches with custom lgNomEntries
> SELECT theta_sketch_estimate(theta_union_agg(sketch, 15)) FROM (
    SELECT theta_sketch_agg(col) AS sketch FROM VALUES (1), (2) AS tab(col)
    UNION ALL
    SELECT theta_sketch_agg(col, 20) AS sketch FROM VALUES (2), (3) AS tab(col)
  ) t;
3