sqlserver累积求和函数

时间段是11:30,当前数量是0的时候,累积求和函数sum() over()没时间累积效果,请问当前值是0时如何实现累积统计的效果

时间段    当前数据段数量    累积求和  [sum(sl)  over(order by groupid asc)]

9:30            5                      5

10:30          6                     11

11:30          0                      0         (ps:这里应该是11+0=11)

12:30          2                      13

SQL 帆软用户BVVcrR2D7A 发布于 2023-12-7 17:11 (编辑于 2023-12-7 17:28)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共1回答
最佳回答
0
CD20160914Lv8专家互助
发布于2023-12-7 17:19(编辑于 2023-12-7 17:23)

不会的,这样是可以的呀

with a as (

select '09:05:00' as 时间,5 as 数量 from dual

union all

select '10:05:00' as 时间,6 as 数量 from dual

union all

select '11:05:00' as 时间,0 as 数量 from dual

union all

select '12:05:00' as 时间,8 as 数量 from dual

)

select 

时间,  

 SUM(数量) OVER (ORDER BY 时间) AS running_total ,

  数量

 from a

-------------------------------

image.png

  • 2关注人数
  • 165浏览人数
  • 最后回答于:2023-12-7 17:28
    请选择关闭问题的原因
    确定 取消
    返回顶部