SQL:在结果查询中获取位置

时间:2010-10-08 07:58:18

标签: sql mysql rank

我有一个名为'points'的表,其中包含一个字段'total',其中包含记录的总分数。现在我想计算一个特定记录的排名。

所以喜欢:SELECT (...) as rank FROM points WHERE id=63

这在SQL中是否可行?

2 个答案:

答案 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