適用対象:
Databricks SQL
Databricks Runtime 18.0 以降" とマークされているチェック
複数のシータ スケッチ バッファーを使用し、集合和集合を使用してそれらを 1 つの結果バッファーにマージします。 この関数を使用して、異なるパーティションまたは期間のスケッチを結合します。
構文
theta_union_agg ( sketch [, lgNomEntries ] )
論争
-
sketch: バイナリ形式のΘスケッチ (集計関数
theta_sketch_aggなど)。 -
lgNomEntries: 共用体バッファーの名目エントリの log-base-2 を指定する省略可能な
INTEGERリテラル。 4 ~ 26 の範囲で指定する必要があります。 既定値は 12 です。 値が大きいほど精度は向上しますが、使用するメモリは多くなります。
返品ポリシー
すべての入力スケッチの和集合を表す、マージされたシリアル化された Theta スケッチを含む BINARY 値。
注記
- 和集合演算は、異なる
lgNomEntries値を持つ入力スケッチを処理します。 -
NULL値は集計中は無視されます。 - 2 つのスケッチを正確に結合するには、代わりにスカラー
theta_union関数を 使用します。
エラー メッセージ
例示
-- 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