适用于:
Databricks Runtime 18.2 及更高版本
计算带有双重摘要和Theta草图的元组草图的集合差(A减B)。 返回的草图只包含出现在 TupleSketch 中但不出现在 Theta 草图中的键。
Syntax
tuple_difference_theta_double ( first, second )
Arguments
- first:采用双摘要的二进制格式元组(设置 A)。
-
第二:以二进制格式(集合B)形式绘制的Theta草图,例如来自
theta_sketch_agg聚合函数。
Returns
一个 BINARY 值,该值包含表示集差异的元组 (A - B)。
如果 first 或 second 为 NULL,则结果为 NULL。
Notes
- 参数顺序固定:
first必须是 TupleSketch,必须second是 Theta Sketch。 将草图类型反向传递则提升 TUPLE_INVALID_INPUT_SKETCH_BUFFER_FAMILY。 - 结果中的键保留了元组草图的摘要值。
- 该函数与 tuple_sketch_theta_double 不同,后者返回元组草图的采样率。
常见错误条件
- TUPLE_INVALID_INPUT_SKETCH_BUFFER
- TUPLE_INVALID_INPUT_SKETCH_BUFFER_FAMILY
- THETA_INVALID_INPUT_SKETCH_BUFFER
- THETA_INVALID_INPUT_SKETCH_BUFFER_FAMILY (无效的输入示意图缓冲家庭)
Examples
> SELECT tuple_sketch_estimate_double(
tuple_difference_theta_double(
tuple_sketch_agg_double(col1, val1),
theta_sketch_agg(col2)
)
) FROM VALUES (5, 5.0D, 4), (1, 1.0D, 4), (2, 2.0D, 5), (3, 3.0D, 1) tab(col1, val1, col2);
2.0