2010-05-14 71 views
1

我每10秒收集一個系統的數據(這個時間差異是由於與聯網設備的通信時間而異)。我想每天計算此活動記錄模型的存儲值的平均值和總和。所有記錄均以UTC格式保存。如何在特定時間段內聚合activerecord模型數據?

對於例如從午夜到東部午夜的前一天的總和和平均值,正確的方法是什麼?我可以在SQL中做到這一點,但不知道「軌道方式」來做這個計算。

回答

4

試試這個:

tz = ActiveSupport::TimeZone.new("Eastern Time (US & Canada)") 
range = 1.day.ago(tz.now).beginning_of_day..1.day.ago(tz.now).end_of_day 
total = Model.sum(:column, :conditions => {created_at >= range}) 
相關問題