MSSQL 分组后取每组第一条(group by order by)

查询中经常遇到这种查询,分组后取每组第一条。分享下一个SQL语句:

 

--根据 x 分组后、根据 y 排序后取第一条
select * from (
 select ROW_NUMBER() over(partition by x order by y desc) RowNum
   ,testTable.*
   from testTable) as t1  where RowNum = 1


注:我使用MS SQL 08 R2

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。