SQL语句分组获取记录的第一条数据的方法
使用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
执行结果图:
相关推荐
godfather 2020-06-26
ItBJLan 2020-06-17
dreamhua 2020-06-05
明月清风精进不止 2020-04-21
明月清风精进不止 2020-02-17
ALiDan 2020-01-12
ztyzly00 2020-01-12
ALiDan 2020-01-04
tanrong 2019-12-28
dreamhua 2019-12-26
81911536 2019-12-14
xiaobaif 2019-12-13
一对儿程序猿 2019-12-08
azhou 2019-10-22
oraclemch 2019-07-05
sqlitexin 2019-07-25
汉武帝刘彻 2019-03-19
YFCEMBEDD 2019-06-30
zjyzz 2014-12-08