[英]What is the best way to calculate difference between TIMESTAMP values in Ruby on Rails
[英]What is the best way for getting difference between records' column
我有一个模型CounterRecord
并有data
列。 记录清单:
r1.data = 10
r2.data = 12
r3.data = 15
r4.data = 20
我想获得当前记录与先前记录[10,2,3,5]
之间的差异。 Rails是否具有默认方式?
我不认为Rails
或ActiveRecord
有这样的东西,但是只需一点点红宝石就可以轻松实现:
CounterRecord.pluck(:data).each_with_index.map { |c,i| a[0] == c ? c : (a[i-1].to_i - c).abs }
滑轨是否具有默认方式?
没有。
可能的解决方案:
CounterRecord.pluck(:data).each_cons(2).map { |first, second| second - first }
注意:如果有大量记录,这将很容易杀死您的记忆。
没有默认的方法可以这样做。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.