1.函数介绍
参数聚合函数 | ClickHouse Docs
Retention
该函数将一组条件作为参数,类型为1到32个 UInt8
类型的参数,用来表示事件是否满足特定条件。 任何条件都可以指定为参数(如 WHERE).
除了第一个以外,条件成对适用:如果第一个和第二个是真的,第二个结果将是真的,如果第一个和第三个是真的,第三个结果将是真的,等等。
语法
retention(cond1, cond2, ..., cond32);
参数
cond
— 返回UInt8
结果(1或0)的表达式。
返回值
数组为1或0。
- 1 — 条件满足。
- 0 — 条件不满足。
2.实践
select sum(r[1]) ,sum(r[2]) ,sum(r[3]) ,sum(r[2])/sum(r[1]) from ( select mid ,retention(h_date = '2022-10-02', h_date between '2022-10-03' and '2022-10-13', h_date = '2022-10-04') AS r from ( select mid , toString(toDate(ctime)) as h_date from ads_activity_626_web_pv_a where activity_name ='2022萌节' and ctime between '2022-10-02 00:00:00' and '2022-10-13 00:00:00' and event_type ='pv' and coalesce(spm_id,'')>'' group by mid , toString(toDate(ctime)) ) a group by mid ) a |