select t.log_day, t.user_id, t.hobby from (select date(l.log_time) as log_day, l.user_id, u.hobby, rank() over(partition by date(l.log_time) order by l.log_time asc) as timerank from login_tb l left join user_action_tb u on l.user_id=u.user_id) t where t.timerank=1 order by t.log_day asc;