Sql 新的一年里,累计总和从零开始
我想编写一个SQL查询(SQL Server),在这里我可以累计一列的值,但如果新年即将开始,我想再次开始累计 例如,我有一张这样的桌子:Sql 新的一年里,累计总和从零开始,sql,sql-server,sum,sql-order-by,aggregate-functions,Sql,Sql Server,Sum,Sql Order By,Aggregate Functions,我想编写一个SQL查询(SQL Server),在这里我可以累计一列的值,但如果新年即将开始,我想再次开始累计 例如,我有一张这样的桌子: SELECT *, SUM(value) OVER (ORDER BY YEAR ASC, Monthnum ASC) as RESULT from TABLE ORDER BY YEAR DESC, MONTHNUM DESC 我的查询当前如下所示: SELECT *, SUM(value) OVER (ORDER BY YEAR ASC, Mon
SELECT *, SUM(value) OVER (ORDER BY YEAR ASC, Monthnum ASC) as RESULT
from TABLE
ORDER BY YEAR DESC, MONTHNUM DESC
我的查询当前如下所示:
SELECT *, SUM(value) OVER (ORDER BY YEAR ASC, Monthnum ASC) as RESULT
from TABLE
ORDER BY YEAR DESC, MONTHNUM DESC
我的结果如下:
SELECT *, SUM(value) OVER (ORDER BY YEAR ASC, Monthnum ASC) as RESULT
from TABLE
ORDER BY YEAR DESC, MONTHNUM DESC
但我真正想要的是,我的结果是这样的:
SELECT *, SUM(value) OVER (ORDER BY YEAR ASC, Monthnum ASC) as RESULT
from TABLE
ORDER BY YEAR DESC, MONTHNUM DESC
仅按年份划分:
SELECT *, SUM(value) OVER (PARTITION BY YEAR ORDER BY Monthnum) as RESULT
from TABLE --^--> here
ORDER BY YEAR DESC, MONTHNUM DESC
仅按年份划分:
SELECT *, SUM(value) OVER (PARTITION BY YEAR ORDER BY Monthnum) as RESULT
from TABLE --^--> here
ORDER BY YEAR DESC, MONTHNUM DESC