题解 | #2021年11月每天新用户的次日留存率#

2021年11月每天新用户的次日留存率

https://www.nowcoder.com/practice/1fc0e75f07434ef5ba4f1fb2aa83a450

select a.dt, round(count(distinct b.uid)/count(distinct a.uid),2)
from
(select uid, min(date_format(in_time,'%Y-%m-%d')) dt
from tb_user_log
group by uid) a
left join
(select uid, date_format(out_time,'%Y-%m-%d') dt
from tb_user_log
where date_format(out_time,'%Y-%m')='2021-11') b
on a.dt=date_sub(b.dt,interval 1 day)
and a.uid=b.uid
where datediff(a.dt,'2021-11-01')>=0
group by a.dt

# select datediff('2021-11-02','2021-11-01')
  • 找到第一次登录的日期
  • 找到登录的其他日期
  • 连接两个表
  • 然后继续聚合计算
  • 注意要以第一个表作为连接标准
  • 计数时要注意去重
全部评论

相关推荐

程序员牛肉:主要是因为小厂的资金本来就很吃紧,所以更喜欢有实习经历的同学。来了就能上手。 而大厂因为钱多,实习生一天三四百的就不算事。所以愿意培养你,在面试的时候也就不在乎你有没有实习(除非是同级别大厂的实习。) 按照你的简历来看,同质化太严重了。项目也很烂大街。 要么换项目,要么考研。 你现在选择工作的话,前景不是很好了。
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务