题解 | #计算用户的平均次日留存率#

计算用户的平均次日留存率

https://www.nowcoder.com/practice/126083961ae0415fbde061d7ebbde453

select
 count(q2.device_id)/count(q1.device_id) as avg_ret
# 将表2的设备数除以表1的设备数(均已去重),即所有第二天上线了的用户数除以第一天上线的用户数,得到的就是次日留存率
from 
# 表1的device_id去重
  (select distinct device_id, date from question_practice_detail) as q1
left join 
# 表2的device_id去重
  (select distinct device_id, date from question_practice_detail) as q2
# 将表1和表2左外连接,连接条件为device_id相等,同时表2的日期为表1的明天时才连在一起
on q1.device_id=q2.device_id and q2.date=date_add(q1.date,interval 1 day)

全部评论

相关推荐

点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务