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

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

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

SELECT COUNT(d2)/COUNT(*) avg_ret
FROM
(SELECT DISTINCT q1.device_id,q1.date d1,q2.date d2
FROM question_practice_detail q1
LEFT JOIN
question_practice_detail q2
ON 
YEAR(q1.date) = YEAR(q2.date) 
AND MONTH(q1.date) = MONTH(q2.date)
AND DAY(q1.date)+1 = DAY(q2.date)
AND q1.device_id=q2.device_id) t

非常简单的思路

先两张表里面根据日期联立,作为新表

之后找到第二天为null的去除以全部就行了

全部评论

相关推荐

点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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