Activerecord附加和列

时间:2011-10-21 20:44:50

标签: ruby-on-rails activerecord

请帮帮我。今天如何选择以秒为单位的时间总和? 例如,我有一些表:

online | offline | ....
 10:33 | 12:08 | ...
 13:10 | 13:34 | ...

我需要在几秒钟内收到这段时间的总和(或分钟 - 这并不重要)。 谢谢!

1 个答案:

答案 0 :(得分:3)

def secounds
     (self.offline-self.online).to_i # will give you the time in secounds
end

然后你可以将它用于块

sum=Integer.new
Model.where(_your conditions_).each do |instance|
     sum+=instance.secounds
end
sum # << the secounds of all the data you selected using the weher coondition

//啊,还有一件事。这是一项未经编写的法律,您永远不会为其他列中的数据创建数据列。

仅限数据库:

Model.sum("offline-online")
Model.where("my condition").sum("offline-online") # also with conditions....