题解 | 平均活跃天数和月活人数

平均活跃天数和月活人数

https://www.nowcoder.com/practice/9e2fb674b58b4f60ac765b7a37dde1b9

这道题做了好久老是报错,后面才发现是理解错了【用户平均月活跃天数】

我以为是

用户平均月活跃天数=count(uid)/count(distinct uid)

但后面发现,一个用户在[一天内]可能会提交[多份]试卷,所以需要按照uid天数来去重,所以:

用户平均月活跃天数=count(distinct uid,date_format(submit_time,'%Y%m%d')/distinct uid

代码如下:

select date_format(submit_time,'%Y%m') as month,round(count(distinct uid,date_format(submit_time,'%Y%m%d'))/count(distinct uid),2) as avg_active_days,count(distinct uid) as mau
from exam_record
where year(submit_time)=2021 and submit_time is not null 
group by date_format(submit_time,'%Y%m')
order by month;

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务