php - mysql - 获胜排名没有平局

标签 php mysql ranking

我在每个用户的排名都是完美的方面遇到了问题,问题是当用户“a”与用户“b”的结果相同时

我的代码

  SELECT ID, Wins, 
    (SELECT COUNT(*)+1 FROM users WHERE Wins>x.Wins) AS rank_upper, 
    (SELECT COUNT(*) FROM users WHERE Wins>=x.Wins) AS rank_lower 
 FROM `users` x WHERE x.username='$_GET[user]'

ID   wins Rank
 1    23    1
 2    17    2
 3    17    2
 4    10    3
 5    10    3

我喜欢这样:

 ID   wins Rank
 1    23    1
 2    17    2
 3    17    3
 4    10    4
 5    10    5

最佳答案

比较 id 可能对你有用

SELECT ID, Wins, 
    (SELECT COUNT(*)+1 FROM users WHERE Wins>x.Wins or (Wins=x.Wins and id<x.id)) AS Rank 
 FROM `users` x WHERE x.username='$_GET[user]'

关于php - mysql - 获胜排名没有平局,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38562377/

相关文章:

log_bin打开时mysql 5.6.21更新语句非常慢

mysql - 从 now() 到日期字段的隐式转换

Excel:对具有由另一列定义的重复值的子集进行排名

php - Nicedit 本地上传图片失败

php - 自动更新数据库中的日期列

mysql - 数据库连接错误.....无法加载驱动程序类...数据源异常

php - 动态评分表

php - MYSQL 和 PHP 字段/列名称作为变量

php - php 中的 Reddit API 返回用于提交故事的错误验证码

ranking - Qlik sense - 当您有多个维度时,在特定维度内进行 Rank()