私はこれを理解できないようです。過去 20 日間の列の標準偏差を取得しようとしています。これが私が持っているものです
Model.where('date < ?','2013-03-25')
.group('date')
.order('date DESC')
.limit(20)
.select('stddev_samp(percent_change) as stdev')
ただし、得られるのは Nil の 20 エントリだけです。標準偏差の 1 つのエントリを期待していました。
stddev_samp を合計に切り替えた後、1 つのエントリで標準偏差を取得できないため、nil になっていることがわかります。つまり、期待どおりに20をグループ化していませんが、各日付の標準偏差を計算しています。
私の質問は、過去 20 日間の stddev を取得するにはどうすればよいですか? ruby で単純に標準偏差を選択select percent_change
して計算できることはわかっていますが、この場合は集計関数 stddev_samp を使用できるはずです。
Rails 3.2 と Postgresql 9.2 を使用しています。