假设我有一个使用 RailsPosts
和Comments
MySQL 的博客应用程序。
我想按评论数对帖子进行排名。(注意:不仅仅是排序,而是得到他们实际的第一、第二、第三名)。
另外,给定一个帖子,我希望能够在不将所有帖子加载到 Rails 并搜索它们的情况下获得它的排名。
例如“这篇文章的评论数排名第 372”
最后,如果两个帖子有相同数量的评论,它们应该有相同的排名——所以平局是可以的。
我在 MySQL 中似乎有一些巧妙的解决方案,例如这篇文章: How do I Handle Ties when Ranking Results in MySQL?
我想知道是否有一个更简单的解决方案,通过规范化帖子表的附加字段中的一些数据。
有没有人看到一个好的方法?