RubyとPostgresで絶対値の合計を得るための最良の方法を探しています。ポストグルーの絶対値
私は、以下の行を試みたが、それは間違った合計を提供します。
Day.last.transactions.sum { |r| r.value_cents.abs }
RubyとPostgresで絶対値の合計を得るための最良の方法を探しています。ポストグルーの絶対値
私は、以下の行を試みたが、それは間違った合計を提供します。
Day.last.transactions.sum { |r| r.value_cents.abs }
あなたがRailsのにすべてを引っ張り、そこに計算を行うよりもはるかに高速である。このようなPostgresのでそれを行うことができます。
Day.last.transactions.pluck('sum(abs(value_cents))::integer')
私の間違いとあなたの解決策は動作します! –
それを聞いてうれしい! – Iceman
どのように間違っていますか?これは、Railsにすべてを引き込み、dbの代わりに集計を行いますが、より速くてもかなり簡単です。 – Iceman
あなたのトランザクションコレクションで '.to_a'を呼び出すと助けになるかもしれません –