题解 | #每天的日活数及新用户占比#

每天的日活数及新用户占比

https://www.nowcoder.com/practice/dbbc9b03794a48f6b34f1131b1a903eb

明确题意:

统计每天的日活数及新用户占比

问题分解:

查询活跃用户表:select uid,date(in_time) dt from tb_user_log union select uid,date(out_time) dt from tb_user_log

计算用户注册时间:min(dt) over(partition by uid)

按天分组:group by dt

计算日活数:count(distinct uid)

计算日活中新用户数:sum(if(register_dt = dt, 1, 0))

计算新用户占比:new_cnt / dau

细节问题:

新用户占比保留2位小数:round(x,2)

结果按日期升序排序:order by dt

select
    dt,
    dau,
    round(new_cnt / dau, 2) uv_new_ratio
from(
select
    dt,
    count(distinct uid) dau,
    sum(if(register_dt = dt, 1, 0)) new_cnt
from(
select
    uid,
    dt,
    min(dt) over(partition by uid) register_dt
from(
select
    uid,
    date(in_time) dt
from tb_user_log
union
select
    uid,
    date(out_time) dt
from tb_user_log
) t1
) t2
group by dt
) t3
order by dt
全部评论

相关推荐

不愿透露姓名的神秘牛友
06-27 20:15
还能挽救吗?找同学帮忙看了一下 字节怎么能如此对我
牛客26396789...:你这是严重红线,被发现你自己永远进不去,你那个同学直接走人,你还敢宣扬
点赞 评论 收藏
分享
重生我想学测开:嵌入式的问题,我准备入行京东外卖了
点赞 评论 收藏
分享
每晚夜里独自颤抖:这个在牛客不是老熟人了吗
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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