根据某列进行排名

来源:互联网 发布:销售人员定位软件 编辑:程序博客网 时间:2024/05/02 00:09
CREATE TABLE [dbo].[testTable]([UID] [int] NULL ,[Mark] [int] NULL) GOINSERT INTO dbo.testTable( UID, Mark )VALUES ( 1, 7 ),( 2, 3 ),( 2, 2 ),( 3, 4 ),( 4, 1 ),( 4, 8 ),( 4, 3 )GO SELECT uid ,total ,( SELECT COUNT(1) + 1FROM ( SELECT UID ,SUM(Mark) totalFROM dbo.testTableGROUP BY UID) bWHERE b.total > a.total) AS seqFROM ( SELECT UID ,SUM(Mark) totalFROM dbo.testTableGROUP BY UID) aORDER BY a.UID


结果如下

uid  total  seq
----------- ----------- -----------
1      7         2
2      5         3
3      4         4  
4     12        1

原创粉丝点击