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

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

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

以下仅为个人笔记 一开始自己陷入了误区,想着直接拿表一表二进行拼接,然后获取相应的值就可以了,但是忽略了一点,表一表二拼接时,以左表为准,右表的日期应该进行偏移后一位,这样才能得到想要的值,date_add 函数向日期添加指定的时间间隔date_add(日期表达式,interval 时间间隔数 type)

select count(q2.device_id)/count(q1.device_id) 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)

全部评论

相关推荐

点赞 评论 收藏
分享
想去夏威夷的小哥哥在度假:5和6才是重点
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务