题解 | #计算用户的平均次日留存率#
计算用户的平均次日留存率
http://www.nowcoder.com/practice/126083961ae0415fbde061d7ebbde453
第二天的有效访问人数 / 第一天的访问人数
用两次子查询,获得第一天的访问人数和第二天的访问人数,要去重
用时间函数date_add(date,interval *间隔次数* *时间单位*)获得隔天的访问数,赋值给第二天
select count(q2.device_id) / count(q1.device_id) as avg_ret from (select distinct device_id, date from question_practice_detail) as q1 left join (select distinct device_id, date from question_practice_detail) as q2 on q1.device_id = q2.device_id and q2.date = date_add(q1.date, interval 1 day)