我需要得到按年份,月份和日期分组的总列数列的总和,但总和必须在"最后一个"小组的一行
Year Month Day Value Total
2017 5 10 10 0
2017 5 21 5 0
2017 5 28 3 18
2017 6 15 8 8
2017 7 14 9 0
2017 7 18 2 11
我该怎么做?
答案 0 :(得分:0)
您似乎想要每月最后一条记录的总数。您可以使用ANSI标准窗口函数执行此操作:
select t.*,
(case when row_number() over (partition by year, month order by day desc) = 1
then sum(value) over (partition by year, month)
else 0
end) as total
from t;