计算 Rails 中记录之间的平均天数 [英] Calculating the average days between records in Rails
本文介绍了计算 Rails 中记录之间的平均天数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
鉴于我有一个带有标准 Rails 时间戳列的 Foo
模型,计算创建记录之间的平均天数的最有效方法是什么?
Given that I have a Foo
model w/ the standard Rails timestamp columns what would be the most efficient way to calculate the average number of days between records being created?
推荐答案
模型的 maximum
和 minimum
类方法将使用 SQL 聚合函数 min()
和 max()
有效地找到极值.
The maximum
and minimum
class methods of your model will use the SQL aggregate functions min()
and max()
to find the extreme values efficiently.
span_secs = Foo.maximum(:created_at) - Foo.minimum(:created_at)
avg_secs = span_secs / (Foo.count - 1)
avg_days = avg_secs / (24 * 60 * 60)
这篇关于计算 Rails 中记录之间的平均天数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文