2012-01-25 18 views
0

我有一個名爲UserScore的rails模型,它有user_id和computed_date。rails(2.3.5)給定用戶的最近記錄

它像

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查找器爲我縮小範圍。

感謝 喬爾

回答

1

我沒有護欄2.3得心應手測試,但下面應該工作。

UserScore.find(:all, :select => "DISTINCT user_id, *", :order => "computed_date desc") 
+0

我認爲這是接近的,但我想裝,「選擇」整個對象只拉user_ID的屬性...... – Joelio

+0

@Joelio見我的編輯。 – Gazler