求一个数据排序方法
我有一张成绩表,我想寻求一种方法可以对其中数据,按总成绩排序后把顺序写入数据表的排名字段中,我试过用“SELECT*FROM 成绩表 ORDER BY 总分 DESC”排序后,再遍历把顺序写如数据表的方法,但执行的很慢。能否有更快捷的方法?
如:
操作前: 操作后:
语文 数学 总分 排名 语文 数学 总分 排名
80 60 140 0 80 60 140 1
71 59 130 0 71 59 130 2
[解决办法]
SELECT*FROM 成绩表 ORDER BY 总分 DESC
这个跟索引没有关系。
是什么数据库,这么慢。
还有一种方式。程序来排序。速度应该差不多。
[解决办法]
甚么数据库?
sql2005,oracle,db2
select row_number() over(order by 总分 DESC) as 排名,* from ...