不使用SQL的子查询、存储过程如何实现按月份的当年汇总

表结构:                                         

bh | sj

 1  | 10

 2  | 22

 3  | 33

不使用sql的子查询和存储过程功能,如何得出以下结果

bh | sj   | sum(sj)

 1  | 10 | 10

 2  | 22 | 32

 3  | 33 | 65

with t(bh,sj) as (
	select 1,10
	union all select 2,22
	union all select 3,33
)
select a.bh,a.sj,SUM(b.sj) from t a
left join t b on b.bh<=a.bh
group by a.bh,a.sj

直接统计咯,既然要没有子查询的,那就给你个关联查询的


select * from tableA a
cross apply (
    select (select sum(sj) from tableA where bh<=a.bh) as [sum(sj)]
) b

 

sum(sj) 是想实现逐月汇总吗

您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632