我正在尝试对每个月的报价总和进行分组,同时添加最后的总和。
例如:
Jan: 300€
Fev: 200€
Mars: 100€
组应该返回的是:
Jan:300€
Fev: 500€ (200 + Jan's 300)
Mars: 600€ (100 + Fev's 500)
当前 SQL:
current_user.quotes.group_by_month(:created_at, last: 12).sum(:price)
我正在使用 groupdate
gem。
谢谢。
最佳答案
如果使用postgresql
,你可以使用windows函数
UNBOUNDED PRECEDING
第一行,CURRENT ROW
当前行- 使用
sum
函数进行累加
像这样。
select name,sum(price)
over(order by (select 1) ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) "price"
from T
sqlfidde:http://sqlfiddle.com/#!17/763e3/7
关于sql - rails : Group and sum while adding last values (Fibonacci),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50132489/