Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

uniqTheta

uniqTheta

引入版本:v21.6.0

使用 Theta Sketch Framework 近似计算不同参数值的数量。

实现细节

此函数会先对聚合中的所有参数计算哈希值,然后将其用于后续计算。 它使用 KMV 算法来近似计算不同参数值的数量。

使用了 4096 (2^12) 个 64 位 sketch。 状态大小约为 41 KB。

相对误差为 3.125% (95% 置信度) ,详见相对误差表

语法

uniqTheta(x[, ...])

参数

返回值

返回一个 UInt64 类型的数值,表示不同参数值的近似个数。UInt64

示例

基本用法

CREATE TABLE example_theta
(
    id UInt32,
    category String
)
ENGINE = Memory;

INSERT INTO example_theta VALUES
(1, 'A'), (2, 'B'), (3, 'A'), (4, 'C'), (5, 'B'), (6, 'A');

SELECT uniqTheta(category) as theta_unique_categories
FROM example_theta;
┌─theta_unique_categories─┐
│                       3 │
└─────────────────────────┘

另请参阅

Navigation