我希望就用一句sql语句来实现!

解决方案 »

  1.   

    Order by [组别],[成绩] DESC
      

  2.   

    前面可是有名次的 有个rank 的函数
      

  3.   

    很认真的分析了问题,并进行实际测试成功,满足你的需求,现贴出源代码,希望你能够采纳给分,谢谢!
    Create table Demo1
    (
    id int not null primary key identity(1,1),
    name nvarchar(50) not null,
    score int not null,
    [group] nvarchar(50) not null,
    ads nvarchar(200) ,
    phone nvarchar(50)
    )insert into demo1 values('小明',80,'语文','北京','010')
    insert into demo1 values('小王',83,'语文','北京','010')
    insert into demo1 values('小刘',64,'语文','北京','010')
    insert into demo1 values('小张',98,'语文','北京','010')
    insert into demo1 values('小红',80,'语文','北京','010')
    insert into demo1 values('小明',80,'数学','北京','010')
    insert into demo1 values('小王',98,'数学','北京','010')
    insert into demo1 values('小红',99,'数学','北京','010')
    insert into demo1 values('小刘',98,'数学','北京','010')select rank() over (partition by [group]  order by score desc ) AS 排名,name, score,[group] from demo1