题解 | #计算用户的平均次日留存率#
计算用户的平均次日留存率
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)