排序方式1
思路 利用子查询 ,用count 计算出比该成绩大个个数有几个,在此基础上加1,就是他在该列的排名了。
SELECT *,(SELECT COUNT(grade)+1 FROM test_grade as p WHERE p.grade> test_grade.grade )
FROM test_grade ORDER BY GRADE DESC ;
方法2
思路,利用distinct 去重
SELECT *,(SELECT COUNT(DISTINCT(grade))+1 FROM test_grade as p WHERE p.grade> test_grade.grade )
FROM test_grade ORDER BY GRADE DESC ;