力扣数据库热题70--No.511题解
官方难度中等,体感可以是启蒙题,容易给人经典思考。
题目本身是分组排序,用窗口函数找到每个用户首次登录的日期。
with tmp as (select *,row_number() over(partition by player_id order by event_date) as rnk from Activity) select player_id,event_date as first_login from tmp where rnk = 1
其他写法:
1)min找最小日期
MIN(A.event_date) AS first_login
2)first_value()把第一名的值拿过来
first_value(event_date) over(...)

浙公网安备 33010602011771号