Rails経由でPostgresqlの機能を使って偏差値を求める
全モデルの中での偏差値を求めたく、現在は全件取得してきて自分で実装した方法で特定のカラムの値からその偏差値を求めているのですが、これをPostgresqlの機能で行うことはできますか?
例えば price
というカラムを持つモデルCompany
があるとき、deviation_of_price
というカラムに偏差値を保存しています。
Postgresqlのマニュアルに該当する関数が用意されてるようなのですが具体的にどう呼び出せばよいかわかりませんでした。
https://www.postgresql.jp/document/8.2/html/functions-aggregate.html
英語版Stackoverflowの記述を参考に書いてみましたが、nil
が返ってくるだけです。
Company.select('stddev_pop(price) as stddev')
Company Load (6.6ms) SELECT stddev_pop(price) as stddev FROM "companies"
=> [#<Company:0x007fdc7d27ed48 id: nil>]
どのようにかけばRailsからPostgresqlの機能で偏差値を求めることが出来るのでしょうか?