SQL php记录集位置

时间:2011-12-13 01:49:00

标签: php sql

我的php游戏中的所有玩家都存储在名为players的表格中,该表格中包含idnamescore字段。

假设我在玩家个人资料页面上,我想知道如何从所有游戏玩家中获得他的分数位置。因此,如果他在整个表中得分最高,他的位置将是#1。

我该如何编写查询?

2 个答案:

答案 0 :(得分:1)

这个怎么样?

SELECT COUNT(id)+1 AS rank FROM players WHERE score>[yourPlayerScore]

答案 1 :(得分:0)

你可以尝试一下吗? :

SET @rank=0;
SELECT rank 
FROM (
    SELECT @rank:=@rank+1 AS rank, name, score
    FROM players
    ORDER BY score DESC
) ranks 
WHERE id = <id of person whose profile is showing>;