select
log_day,
user_id,
hobby
from
    (select log_day,
    user_id,
    hobby,
    rank()over(partition by log_day order by time) as r
    from
        (select
        date(log_time) as log_day,
        time(log_time) as time,
        user_id,
        hobby
        from login_tb
        left join
        user_action_tb
        using(user_id)) a) b
where r = 1
order by log_day