with
    a as (
        select
            user_id,
            date_format (log_time, '%Y-%m-%d') as log_day,
            rank() over (
                partition by
                    date (log_time)
                order by
                    log_time asc
            ) as ranking
        from
            login_tb
    )
select
    a.log_day,
    a.user_id,
    b.hobby
from
    a a
    left join user_action_tb b on a.user_id = b.user_id
where
    a.ranking = 1