题解 | 最长连续登录天数

最长连续登录天数

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

with data1 as(
    select 
        user_id,
        fdate,
        row_number() over (partition by user_id order by fdate asc) as rn
    from 
        tb_dau
    where YEAR(fdate) = 2023 AND MONTH(fdate) = 1
),data2 as(
    select
        user_id,
        fdate,
        DATE_SUB(fdate,INTERVAL rn day) as day1
    from data1
    
),data3 as (
    select 
        user_id,
        COUNT(1) as max_consec_days
    from data2
    group by 
        user_id,
        day1
)
select
    user_id,
    max(max_consec_days) as max_consec_days
from data3
group by user_id
order by user_id asc



全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

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