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

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

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

select
    date,
    IFNULL(round(sum(if (rk=1 and diff = 1, 1, 0)) / sum(if (rk = 1, 1, 0)),3), 0.000) p
from
    (
     select
        user_id,
        date,
        datediff (lead (date, 1, '9999-01-01') over ( partition by user_id order by date),date)diff,
        row_number() over (partition by user_id order by date) rk
        from
            (
                select distinct user_id,date
                from login
            ) t1
    ) t2
group by date

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

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