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

select user_id
from (select user_id, start_date, count(start_date) cnt
      from (select *, date_sub(log_date, interval rk day) start_date
            from (select distinct user_id, date(log_time) log_date, 
                         dense_rank() over(partition by user_id 
                                     order by date(log_time)) rk
                  from login_tb) t1) t2
      group by user_id, start_date) t3
where user_id in (select user_id from register_tb)
group by user_id
having max(cnt)>=3
order by user_id asc;

全部评论

相关推荐

评论
点赞
收藏
分享
牛客网
牛客企业服务