计算 Rails 中记录之间的平均天数 [英] Calculating the average days between records in Rails

查看:46
本文介绍了计算 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?

推荐答案

模型的 maximumminimum 类方法将使用 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屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆