我有一个名为'points'的表,其中包含一个字段'total',其中包含记录的总分数。现在我想计算一个特定记录的排名。
所以喜欢:SELECT (...) as rank FROM points WHERE id=63
这在SQL中是否可行?
答案 0 :(得分:2)
计算点数较高的行数+ 1和总行数。
答案 1 :(得分:0)
SET @rownum := 0;
SELECT rank, total FROM (
SELECT @rownum := @rownum + 1 AS rank, total, id
FROM points ORDER BY total DESC
) as result WHERE id=63