RPS*_*RPS 1 sql t-sql sql-server group-by greatest-n-per-group
我需要能够为每个具有最大值的名称选择第一行.
我有一张表格如下:
id name value
0 JOHN 123
1 STEVE 125
2 JOHN 127
3 JOHN 126
Run Code Online (Sandbox Code Playgroud)
所以我期待回归:
id name value
1 STEVE 125
2 JOHN 127
Run Code Online (Sandbox Code Playgroud)
关于如何执行此操作的MSSQL语法的任何想法?
在指定SQL Server时,未指定版本.如果您使用的是SQL Server 2005或更高版本,则可以执行以下操作:
With RankedItems As
(
Select id, name, value
, Row_Number() Over ( Partition By name Order By value Desc, id Asc ) As ItemRank
From Table
)
Select id, name, value
From RankedItems
Where ItemRank = 1
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
158 次 |
最近记录: |