更多可以參考:http://blog.csdn.net/fn_2015/article/details/54286366
下面是我自己寫的sql
相同分數的名次相同的情況 :
SELECT
t.*,
(
SELECT
count(*) + 1
FROM
(
SELECT
t1.score
FROM
t_student_score t1
WHERE
1 = 1
GROUP BY
t1.score
) t2
WHERE
t2.score > t.score
) AS rank
FROM
t_student_score t
WHERE
1 = 1
ORDER BY
t.score desc
LIMIT 20