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

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

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

关键点:

  • 日期计算函数 DATEDIFF 计算两个日期变量的差值。

  • 逻辑:自join。


select   sum(if(is_ret = 1, 1, 0)) / count(1)
from (

select distinct a.device_id, a.date
       , if(b.device_id is not null, 1, 0) as is_ret
from question_practice_detail a 

left join (
    select distinct device_id, date
    from question_practice_detail 
    ) b on a.device_id = b.device_id 
          and DATEDIFF(b.date, a.date) = 1
    
)a 
全部评论

相关推荐

06-25 09:33
厦门大学 Java
程序员饺子:现在日常估计没啥hc了,等到八月多估计就慢慢有了。双九✌🏻不用焦虑的
投递快手等公司7个岗位
点赞 评论 收藏
分享
流浪的神仙:无恶意,算法一般好像都得9硕才能干算法太卷啦
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务