方案1:MAX函数+group by
SELECT user_id,MAX(date) AS d FROM login GROUP BY user_id ORDER BY user_id ASC;
方案2:dense_rank窗口函数
SELECT t.user_id,t.date
FROM (SELECT *,DENSE_RANK() OVER(PARTITION BY user_id ORDER BY date DESC) AS rank_date
FROM login) t
WHERE t.rank_date = 1
ORDER BY t.user_id;
京公网安备 11010502036488号