题解 | 查询连续登陆的用户

查询连续登陆的用户

https://www.nowcoder.com/practice/9944210610ec417e94140ac09512a3f5

select
    user_id
from 
(
    select 
        user_id,
        login_date,
        row_number() over (partition by user_id order by login_date) as rk,
        date_sub(login_date, interval row_number() over (partition by user_id order by login_date) day) as date_same
    from 
    (
        -- 首先获取去重的登录日期
        select distinct
            user_id,
            date(log_time) as login_date
        from 
            login_tb
        where 
            user_id in (select user_id from register_tb)
    ) distinct_dates
) as t
group by 
    user_id, date_same
having 
    count(*) >= 3;  -- 连续登录的天数>=3

全部评论

相关推荐

秋招投简历提醒助手:个人经验是,一般面二十场左右就会进入侃侃而谈阶段。我今年七月末的时候开始的第一次面试,都是很多不会,回复很慢。后面慢慢迭代,到九月中的时候基本上面啥说啥,很放松的状态
远程面试的尴尬瞬间
点赞 评论 收藏
分享
程序员牛肉:你这简历有啥值得拷打的?在牛客你这种简历一抓一大把,也就是个人信息不一样而已。 关键要去找亮点,亮点啊,整个简历都跟流水线生产出来的一样。
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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