代码之家  ›  专栏  ›  技术社区  ›  SuperFrog

MySql-按结果获取用户排名

  •  0
  • SuperFrog  · 技术社区  · 11 年前

    给定此表结构:

    ID|USER|SCORE|SCORE_DATE

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

    给定此数据:

    1 |用户1 | 1300 | 2014年1月2日

    2 |用户2 | 3300 | 2014年1月2日

    3 |用户3 | 4300 | 2014年1月2日

    4 |用户4 | 650 | 2014年1月2日

    5 |用户5 | 1700 | 2014年1月2日

    如果传递的参数是4000,我希望结果是2,如果结果是2000,结果应该是3,如果参数是500,结果应该为6等。

    1 回复  |  直到 11 年前
        1
  •  1
  •   Gordon Linoff    11 年前

    您可以使用 count where :

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