这基本上就是我想要做的。假设您正在建立一个网站,对在视频游戏中获得高分的人进行排名。您有一个用户,他在级别 1、2 和 3 上分别获得 100、150 和 200 分。然后,您有另一个用户获得了 200、100 和 100 的分数。如果您正在查看用户 1,您将获得如下表格:
| 分数 | 排名 | 1级:| 100 | 2 | 2级:| 150 | 1 | 3级:| 200 | 1 |
我已经知道如何将分数存储在 MySQL 表中,然后对数据进行排名。这是它变得有点棘手的地方。假设您想平均用户的所有排名。对于用户 1,您将获得 1.333。对于用户 2,您将获得 1.666。所以如果你对这些数据进行排名,你会得到一个像这样的表格:
| 平均排名 | 排名 | 用户 1:| 1.333 | 1 | 用户 2:| 1.666 | 2 |
基本上,最好的方法是什么?