我有一个名为UserScore的rails模型,它有user_id和computed_date。
它有像
这样的记录 user_id computed_date
1 2012-01-11
1 2012-01-10
2 2012-01-04
3 2012-01-06
1 2012-01-13
我想要表格中所有用户的最新(单个)分数。得分的日期并不完全相同,所以有些用户可能没有得分数周,其他人昨天得分......
我知道我可以把它们全部搞定并循环播放,但是这个表有20万条记录,正在寻找一种方法来利用sql finder来缩小它。
感谢 乔尔
答案 0 :(得分:1)
我没有使用rails 2.3进行测试,但以下情况应该有效。
UserScore.find(:all, :select => "DISTINCT user_id, *", :order => "computed_date desc")