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;