Tha*_*ham 3 mysql database ranking
我有一张USER桌子,有桌子userId和point田地.在运行时,我想知道特定用户群的排名是什么.实现此目的的最佳方法是:
1:将所有用户查询到列表中.基于点对列表进行排序并进行二进制搜索以查找该用户的排名.这听起来像个坏主意.
2:是否可以通过创建数据库查询来完成这些任务?
我期待2000-5000用户.
SET @rownum := 0;
SELECT rank, userId, point
FROM (
SELECT @rownum := @rownum + 1 AS rank, userId, point
FROM user ORDER BY point DESC
)
as result WHERE userId = xxxxxxxx
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2039 次 |
| 最近记录: |