mySQL 的求和问题 - MS-SQL Server / 疑难问题
我有一个表
月份 产量
一月 100
二月 200
三月 500
四月 700
我想通过查询 得到表
月份 常量 累计产量
一月 100 100
二月 200 300
三月 500 800
四月 700 1500
大牛们~~怎么才能通过第一张表 得到第二张表啊~~~
SQL code:
--我对你的表进行了一下简单化处理,即把“一月”转换成了1,“2月”转换成了2……
--你可以用张临时表判断月份并加上这一int列即可,我这里不写了
--原表数据
select * from t1
--查询
select 月,产量 as 常量
,累计产量=(select SUM(产量) from t1 where 月<=x.月)
from t1 x
order by 月
--结果
/*
月 产量
----------- -----------
2 200
3 500
4 700
1 100
(4 行受影响)
月 常量 累计产量
----------- ----------- -----------
1 100 100
2 200 300
3 500 800
4 700 1500
(4 行受影响)
*/
月份最好不要用中文,排序取累计值即可
SQL code:
insert @t select '一月',100
insert @t select '二月',200
insert @t select '三月',500
insert @t select '四月',700
select identity(int,1,1) as id,月份,产量 into #
from @t
select 月份,产量,累加值=(select sum(产量) fro
相关问答:
现在有两张表:文章主表A(articleId,articleTitle),文章评论表B(commentId,articleId,commentTitle)
现在我想实现这样的功能:列出文章列表,其中每篇文章标题下面列出此文章的前2个文章评论,请问sql语句怎么写啊 ......
sp 程序
delimiter //
create procedure ma()
begin
declare i int default 0;
while i<11 do
set i=i+1;
select i;
end while;
end //
delimiter ;
1+2+...+9+10
为什么这个程序无法实现累加效果
/ ......
id name datetime
1 a 2010-05-13 10:15:00
2 b 2010-05-14 09:10:00
3 d 2010-05-14 10:10:00
如何将距离目前最近的那个记录的name 更新为“x”呢
谢谢咯 啊 呵呵
update table_n ......