1. 概述
当计算数据非常大时,传统的精确的去重计数可能算不出来,使用近似的去重计数可以很快计算出结果。
语法 | APPROX_COUNTD_AGG(array) | 根据当前分析维度,动态返回某字段的近似去重计数,生成结果为一动态数据列,行数与当前分析维度行数一致。 |
---|---|---|
参数 | array | 必须为非聚合函数公式返回的结果,可以是某指标字段、维度或指标字段与普通公式的计算结果。 |
2. 注意事项
仅支持实时数据中使用。
本函数仅支持以下数据库系统:CLICKHOUSE、ORACLE(12c r1,12.1.0.2及以上)、SQLSERVER(2019及以上)、PRESTO、REDSHIFT、VERTICA。当数据库系统为REDSHIFT时,由于REDSHIFT的限制,只能同时对同一个字段做需要排序的聚合操作(如求去重计数、中位数、百分位、近似去重计数),同时对2个或以上的字段做此种聚合操作会发生错误。当数据库系统为VERTICA时,由于VERTICA的限制,只能同时使用(精确)去重计数或近似去重计数中的一个。
支持使用一个任意类型的参数。
3. 示例
用户横轴为维度字段"日"时,纵轴的计算字段 APPROX_COUNTD_AGG() 返回的值为每日的销量的近似去重个数。
当用户横轴为维度字段"月"时,APPROX_COUNTD_AGG() 返回的值为每月的销量的近似去重个数。
例如对单据编码计算每天的近似去重计数,如下图所示: