SQL 累计求和的问题

窗外雨寒 2013-08-19 10:04:21

drop table test
--已知:表有两个字段
create table test(colum1 varchar(255),colum2 int);

--数据
insert into test values(11,11);
insert into test values(22,22);
insert into test values(44,44);
insert into test values(55,33);
insert into test values(33,44);

select * from test;
--------
colum1 colum2
11 11
22 22
44 44
55 33
33 44

[color=#FF0000] --显示结果 要求,按照 colum1, 对colum1列进行每一行累计计算,该怎么写?[/color] ----------------------
colum1 累计
11 11
22 33
44 77
55 132
33 165
...全文
185 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
唐诗三百首 2013-08-23
  • 打赏
  • 举报
回复
ali_mushishi 2013-08-23
  • 打赏
  • 举报
回复
引用 4 楼 ap0405140 的回复:
窗外雨寒 2013-08-20
  • 打赏
  • 举报
回复
求版主关注,我明明有200分 为什么结贴给分老是提示 与总分不符合? 真心谢谢《ap0405140 唐诗三百首》---能不能把分帮我划转给 《ap0405140 唐诗三百首》
窗外雨寒 2013-08-19
  • 打赏
  • 举报
回复
你真的太厉害了,真心谢谢《ap0405140 唐诗三百首》,为什么我要结贴的时候,说我总分不符?
唐诗三百首 2013-08-19
  • 打赏
  • 举报
回复

with t as
(select row_number() over(order by getdate()) 'rn',
        colum1,colum2 from test
)
select t1.colum1,
       (select sum(t2.colum2) from t t2 where t2.rn<=t1.rn) '累计'
 from t t1
  
/*
colum1               累计
-------------------- -----------
11                   11
22                   33
44                   77
55                   110
33                   154

(5 row(s) affected)
*/

27,580

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧