select user_id from( select user_id,date(date_ass),count(user_id) ct from( select user_id,log_time,date_sub(log_time,interval rk day) date_ass from( select t1.user_id,log_time,row_number() over(partition by t1.user_id order by log_time) rk from register_tb t1 join login_tb t2 on t1.user_id=t2.user_id) t) a group by user_id,date(date_ass)) b where ct>=3;