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

查询连续登陆的用户

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

select user_id
from 
(select user_id,date(log_time) log_time,
date_sub(date(log_time),interval row_number()over(partition by user_id order by log_time) day) log_gap
from login_tb 
where user_id in (select user_id from register_tb)
) t1 
group by user_id, log_gap
having count(log_gap) >=3
order by user_id;
其实没必要把log_gap统计出来再取值,直接筛选掉就好了。
*date函数还挺关键的,不然log_gap出来就是带时间的,很难一致并统计了



全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

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