Sql 累计金额不起作用
我试图得到整个列的累积和。下面是我的数据样本Sql 累计金额不起作用,sql,sql-server,Sql,Sql Server,我试图得到整个列的累积和。下面是我的数据样本 DT ETB_DT Friday 00:00:00.0000000 Friday 04:00:00.0000000 Friday 00:00:00.0000000 Friday 08:00:00.0000000 Friday 00:00:00.0000000 Friday 12:00:00.0000000 Friday 00:00:00.0000000 Friday 16:00:00.00000
DT ETB_DT
Friday 00:00:00.0000000 Friday 04:00:00.0000000
Friday 00:00:00.0000000 Friday 08:00:00.0000000
Friday 00:00:00.0000000 Friday 12:00:00.0000000
Friday 00:00:00.0000000 Friday 16:00:00.0000000
Friday 00:00:00.0000000 Friday 20:00:00.0000000
No_of_records
22
41
86
65
25
我使用了下面的代码来获取累积列,该列应该添加到前一行
选择*
,累计=总和(无记录)
从没有累计4
按DT分组,ETB_DT,无记录
按DT订购
但是,这给了我以下输出
DT ETB_DT
Friday 00:00:00.0000000 Friday 04:00:00.0000000
Friday 00:00:00.0000000 Friday 08:00:00.0000000
Friday 00:00:00.0000000 Friday 12:00:00.0000000
Friday 00:00:00.0000000 Friday 16:00:00.0000000
Friday 00:00:00.0000000 Friday 20:00:00.0000000
No_of_records cumulative
22 22
41 41
86 86
65 65
25 25
下面是我想要的输出
DT ETB_DT
Friday 00:00:00.0000000 Friday 04:00:00.0000000
Friday 00:00:00.0000000 Friday 08:00:00.0000000
Friday 00:00:00.0000000 Friday 12:00:00.0000000
Friday 00:00:00.0000000 Friday 16:00:00.0000000
Friday 00:00:00.0000000 Friday 20:00:00.0000000
No_of_records cumulative
22 22
41 63
86 149
65 214
25 239
你们有什么想法吗?非常感谢您的帮助。这是累积总和的语法:
Select DT, ETB_DT, No_of_records
sum(No_of_records) over (order by DT, ETB_DT) as cumulative
From withoutcumulative4
Order by DT;
带有order by的over
子句是使总和累积的原因。没有给它命名
据我所知,您不需要
分组方式
这是累积和的语法:
Select DT, ETB_DT, No_of_records
sum(No_of_records) over (order by DT, ETB_DT) as cumulative
From withoutcumulative4
Order by DT;
带有order by的over
子句是使总和累积的原因。没有给它命名
据我所知,您不需要分组方式
您可以使用:
Select *
,cumulative = sum(No_of_records) over (order by ETB_DT)
From withoutcumulative4
Order by DT
您可以使用:
Select *
,cumulative = sum(No_of_records) over (order by ETB_DT)
From withoutcumulative4
Order by DT