题解 | #牛客每个人最近的登录日期(三)#

牛客每个人最近的登录日期(三)

http://www.nowcoder.com/practice/16d41af206cd4066a06a3a0aa585ad3d

思路

先找出每个用户第一次登录的时间 再add_day进行判断 用左连接保留没有第二天登录的用户来做分母

小计:count记录行数 sum计算累加值

SELECT round(count(l2.user_id)/ count(l1.user_id),3) as p
FROM login l1 left join login l2 ON
l1.user_id=l2.user_id and 
l2.date=date_add(l1.date,interval 1 day)
WHERE (l1.user_id,l1.date) in
(select user_id,min(date)
from login
group by user_id);

又犯了一个错:用集函数要group by 啊!

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

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