题解 | 查询连续登陆的用户
SELECT user_id FROM ( SELECT r.user_id, day(log_time) date,row_number()over(partition by r.user_id order by log_time) rankk, day(log_time)-row_number()over(partition by r.user_id order by log_time) countt FROM register_tb r join login_tb l on r.user_id = l.user_id order by r.user_id ) tnk GROUP BY user_id, countt HAVING COUNT(user_id) >= 3 AND count(countt) = MAX(date)-MIN(date)+1