【发布时间】:2017-09-29 04:06:36
【问题描述】:
所以我目前在我的数据库中有一个名为“用户”的表。
假设“用户”有两列:“电子邮件”和“推荐次数”。
例子:
Email ReferralCount
1@1.com 5
2@2.com 3
3@3.com 7
我想要做的是,根据他们的推荐计数对表中的数据进行排名,其中最高推荐计数是排名 1,依此类推。然后我需要能够根据他们的电子邮件地址获得该用户的排名。
我只使用了基本的 SQL,所以我不知道该怎么做?
非常感谢任何帮助!
【问题讨论】:
-
编写一个选择查询并按 ReferralCount 降序排列。
-
您应该根据推荐计数创建视图并将排名放在那里,一旦您的视图在缓存中创建存储并从那里触发查询,如果您的用户有任何更新,则再次创建新视图。跨度>
-
你想如何处理领带?假设 2@2.com 也是 5 个推荐人……他们都是排名 2 还是排名 2 其他 3?他们都是 3 岁吗?
-
哇,在另一个 stackoverflow 中有一个很棒的例子,在这个地址上,它会真正向你展示一些对你有价值的东西:stackoverflow.com/questions/2520357/… - 尽情享受,并随时提出问题......
-
@xQbert 我希望排名是唯一的,我的意思是每个排名位置只有一行,所以如果两个用户有 5 个推荐,他们将是排名 2 和 3。谢谢!