2010-11-22 47 views
3

我有這樣的ActiveRecord的總和:命令和限制與ActiveRecord總和?

@websites = current_user.records.sum(:minutes, :group =>'website', :conditions => "website IS NOT NULL") 

我想將其限制在10個分鐘的最高金額。有人能讓我知道它的語法嗎?

在此先感謝。

回答

11

可以:order通過總結列,然後:limit它10行是這樣的:

@websites = current_user.records.sum(:minutes, 
    :group => 'website', 
    :conditions => 'website IS NOT NULL', 
    :order => 'SUM(minutes) DESC', 
    :limit => 10) 
0

只需添加一個:limit,像這樣:

current_user.records.sum(:minutes, :group => '', :conditions => '', :limit => num) 
+0

這是行不通的。這將只返回前10行,但沒有按降序排序的請求順序* by * summed column。 – 2010-11-22 21:21:22