sum累加问题

SELECT

        时间,

        SUM(现金收入) OVER (ORDER BY 时间) AS 累计现金,

        SUM(银行收入) OVER (ORDER BY 时间) AS 累计银行,

        SUM(现金收入 + 银行收入 - 现金支出 - 银行支出) OVER (ORDER BY 时间) AS 累计余额

    FROM

        日报

  WHERE  时间 > '2023-08-30'  AND itemid = 'aca15c09-ee93-494c-9fb2-d440e3ae5738'

image.png

这个公式累加只能累加库里有数据的日期,我想如果库里这一天没有数据,就按照+0累加,可以怎么实现,

FineReport 帆软用户A5K1Xo5JDb 发布于 2023-10-27 11:34
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共1回答
最佳回答
0
Z4u3z1Lv6专家互助
发布于2023-10-27 11:39

WITH B AS(

select '2023-08-30' [startDate],CONVERT(NVARCHAR(10),GETDATE(),120) [endDate]

)

select convert(varchar(10),dateadd(DAY,number,startDate),120) as [RQ] 

from B , master..spt_values

where type='P' and number>=0 

and dateadd(DAY,number,startDate)<=endDate 

构造一个日期列表 然后用左连接或右连接(看具体SQL)

  • 1关注人数
  • 111浏览人数
  • 最后回答于:2023-10-27 11:39
    请选择关闭问题的原因
    确定 取消
    返回顶部