3

標準の Rails タイムスタンプ列を使用したFooモデルがある場合、作成されるレコード間の平均日数を計算する最も効率的な方法は何でしょうか?

4

2 に答える 2

5

モデルのmaximumおよびminimumクラス メソッドは、SQL 集計関数を使用しmin()max()極値を効率的に見つけます。

span_secs = Foo.maximum(:created_at) - Foo.minimum(:created_at)
avg_secs = span_secs / (Foo.count - 1)
avg_days = avg_secs / (24 * 60 * 60)
于 2012-06-13T14:23:11.483 に答える