题解 | #计算用户的平均次日留存率#javascript:void(0);

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

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

SELECT AVG(IF(b.device_id IS NOT NULL,1,0)) AS avg_ret
FROM (
    SELECT DISTINCT device_id,`date`-- 可能一个人同一天刷了不止一道题
    FROM question_practice_detail
)a LEFT JOIN (-- 使用左联结
    SELECT DISTINCT device_id,DATE_SUB(date, INTERVAL 1 DAY) AS `date`
    FROM question_practice_detail
)b ON a.device_id = b.device_id AND a.date = b.date-- 这里的联接条件是两个,只要有一个不符合全部都是NUll

全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务