假设我有一个包含以下列的表格:
p_id
用户身份
积分
假设这些列有超过 5000 条记录。所以我们实际上有积分的用户。每个用户的积分记录都有一个唯一的行。想象一下,每个用户都可以通过点击某个地方在网站上获得积分。当他们单击时,我用他们获得的点更新数据库。
所以我们有一张表,上面有超过 5000 条有积分的人的记录,对吧?现在我想按它们的点(降序)对它们进行排序,因此如果我运行 MySQL 查询,点数最高的用户将位于页面顶部。
我可以通过简单地运行这样的查询来做到这一点:
SELECT `p_id` FROM `point_table` ORDER BY `points` DESC
此查询将按点按降序为我提供所有记录。
好的,我的问题来了,现在(订购时)我想向每个用户显示他们实际上在哪个地方。所以我想给每个用户这样的东西:“你是 5374 个用户中的 623 个”。问题是我无法指定“623”号码。
我想运行一个查询,它按点对表进行排序,它应该“搜索”或计算行号,它们的记录在哪里,然后将该值返回给我。
谁能帮助我如何为此建立查询?这将是一个很大的帮助。谢谢你。