SQL中partition關鍵字的使用
阿新 • • 發佈:2018-11-08
最近在寫後臺語句時候,運用到了partition這樣一個關鍵字。
先大致說一下背景,有一種資料表,如下
現在需要取出,每一個人最近的一次打卡時間。
思路是,先把資料按照人名分組,然後在每個組裡面按照時間排倒敘,最後取出每組的第一條資料即可。
partition的意思是對資料進行分割槽,sql語句如下
1 select * from 2 ( 3 SELECT 4 ROW_NUMBER() over(partition by [姓名] order by [打卡時間] desc) as rowNum 5 ,[姓名] 6 ,[打卡時間] 7 FROM [dbo].[打卡記錄表] 8 ) temp 9 where temp.rowNum = 1
通過 partition by [姓名] order by [打卡時間] desc,這句就可以做到,讓資料按照姓名分組,並且在每組內部按照時間進行排序
轉載:https://www.cnblogs.com/tfiremeteor/p/6296599.html