2014-02-15 61 views
0

鉴于这种表结构得到用户等级:MySQL的 - 通过结果

ID | USER | SCORE | SCORE_DATE

我想创建一个查询,其结果是得分的排名 - 我的例程将得到分数的参数,并将返回排名。

鉴于这样的数据:

1 | user1 | 1300 | 1/2/2014

2 | user2 | 3300 | 1/2/2014

3 | user3 | 4300 | 1/2/2014

4 | user4 | 650 | 1/2/2014

5 | user5 | 1700 | 2014年1月2日

如果传递的放慢参数是4000,我想要的结果为2,如果结果是2000结果应该是3,如果是放慢参数500的结果应该是6等

回答

1

您可以使用countwhere

select count(*)+1 
from table t 
where score > SCORE_PARAMETER; 
+0

完美,谢谢! –