日期:2014-05-18  浏览次数:20510 次

求sql查询代码
有以下格式的查询结果:

日期 花费 小计
1 20 20
2 30 50
3 40 90
4 50 140



其中小计为花费的总和,原表中只有日期及花费两个列。

求sql语句实现此功能

------解决方案--------------------
create table tb(日期 int, 花费 int)
insert into tb values(1, 20)
insert into tb values(2, 30) 
insert into tb values(3, 40) 
insert into tb values(4, 50) 
go

select *,(select sum(花费) from tb where 日期<=b.日期) as '小计'
from tb b
order by 日期

drop table tb

/*
日期 花费 小计
----------- ----------- ----------- 
1 20 20
2 30 50
3 40 90
4 50 140

(所影响的行数为 4 行)
*/