Tim*_*Tim 2 ruby sql ruby-on-rails ruby-on-rails-3
我有一个包含两列的分数表:user_id和score
user_id得分
1 200
1 120
1 230
2 300
2 345
3 100
3 40
4 350
4 500
......
Score.order('score DESC').limit(3)列出前3个分数.相反,我如何获得前3个分数,其中每个用户只获得列表中的一个位置(他们的最高分).
上表中的高分将是:
user_id:4得分:500
user_id:2得分:345
user_id:1得分:230
谢谢!
蒂姆
您应该能够对查询进行分组:
Score.order('score DESC').group('user_id').limit(3)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1921 次 |
| 最近记录: |