WITH first_login AS( SELECT user_id, DATE(log_time) AS log_day, rank() over(partition by DATE(log_time) order by log_time ASC) as rk #ranking,选择每天第一名登陆的人员 FROM login_tb ) SELECT first_login.log_day, first_login.user_id, user_action_tb.hobby FROM first_login LEFT JOIN user_action_tb ON first_login.user_id=user_action_tb.user_id WHERE first_login.rk=1;