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

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

http://www.nowcoder.com/practice/ea0c56cd700344b590182aad03cc61b8

with t_new_user as(
    select user_id,min(date) as date 
    from login
    group by user_id
),t_keep_user as (
    select user_id,l.date 
    from login l
    left join t_new_user  t using(user_id)
    where t.date = date_sub(l.date,interval 1 day)
)



select l.date,ifnull(round(count(k.user_id)/count(n.user_id),3),0) as p
from t_new_user n
left join t_keep_user k using(user_id)
right join login l  on n.date = l.date
group by l.date
全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

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