Mysql计算累计到每一天去重汇总数

今天要查询1个月内,累计到每一号的去重用户。

想要达到的效果如图所示,但在网上搜索了好久,也没有个说清楚的。所以我写一个抛砖引玉。

示例图1

select

cwc.data_date,

count(distinct cwc.user_id),

sum(count(distinct cwc.user_id)) over(order by cwc.data_date) from (

select user_id,min(data_date) as data_date from dws_users 

where  1=1

#这里是限定时间,根据你的需要

data_date between '2020-06-01' and '2020-06-30'  

#--这里我是根据我的需要,我只看行为大于0 的

and activity_num> 0

GROUP BY 1

)cwc GROUP BY 1

最终得出结果:

原理为:取出去重用户行为的最小时间,然后再累加。这样实现了累计去重的效果。

结果图
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容