通過多個分組獲取 N 個最新行
鑑於此資料
使用者身份 | 完成日期 |
---|---|
1 |
2016 年 7 月 20 日 |
1 |
2016 年 7 月 21 日 |
2 |
2016 年 7 月 20 日 |
2 |
2016 年 7 月 21 日 |
2 |
2016 年 7 月 22 日 |
;with CTE as
(SELECT *,
ROW_NUMBER() OVER (PARTITION BY User_ID
ORDER BY Completion_Date DESC) Row_Num
FROM Data)
SELECT * FORM CTE WHERE Row_Num <= n
使用 n = 1,你將獲得每個 user_id
最近一行:
使用者身份 | 完成日期 | ROW_NUM |
---|---|---|
1 |
2016 年 7 月 21 日 | 1 |
2 |
2016 年 7 月 22 日 | 1 |