Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 累计金额不起作用_Sql_Sql Server - Fatal编程技术网

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