SQL server表中数据排序问题
我在sql server 2000数据库中建了一个成绩表,其中一列为“成绩”列,一列为“名次”列(即按成绩的排名)。“成绩”列我采用了降序排列,但我同时想让“名次”列自动按成绩的大小实现从1开始依次递增的升序排列。请问各位高手,怎样才能做到这点。谢谢!
[解决办法]
你是成绩 和名次两个字段?
按照你说的,只要按照任意一个字段排一下不就可以了
[解决办法]
--不分学科select *,rank()over(order by 成绩 desc) as 名次 from tbl--分学科select *,rank()over(partition by 课程 order by 成绩 desc) as 名次 from tbl
[解决办法]
select *,名次=(select count(*) from tb where 成绩>=a.成绩)from tb a order by 成绩 desc
[解决办法]
SELECT *,名次=ROW_NUMBER() OVER (ORDER BY 成绩 DESC) FROM tb ORDER BY 成绩 DESC