使用Northwind 數據庫
首先查詢Employees表
查詢結果:
city列裡面只有5個城市
使用ROW_NUMBER() OVER(PARTITION BY COL1 ORDER BY COL2) 先進行分組 注:根據COL1分組,在分組內部根據 COL2排序,而此函數計算的值就表示每組內部排序後的順序編號(組內連續的唯一的).
sql語句為:
select EmployeeID,LastName,FirstName,Title,TitleOfCourtesy,City,ROW_NUMBER() over(partition by City order by EmployeeID) as new_index
from Employees
執行結果圖:
可以看到是按照City分組,EmployeeID排序。
select出分組中的第一條記錄
執行語句:
select * from
(select EmployeeID,LastName,FirstName,Title,TitleOfCourtesy,City,ROW_NUMBER() over(partition by City order by EmployeeID) as new_index
from Employees) a where a.new_index=1
執行結果圖: