第一张表中的数据:
1 1000
2 2000
3 3000
4 4000
5 5000 第二张表中的数据:
1 1000
2 3000
3 6000
4 10000
5 15000 第二张表中的数据,是第一张表中前几列数据之和,比如说:第二张表中的第3行数据为6000,是由第一张表中前3列1000+2000+3000,这三个数相加之和,问:这种情况如何用SQL语句实现,请各位大侠指点
1 1000
2 2000
3 3000
4 4000
5 5000 第二张表中的数据:
1 1000
2 3000
3 6000
4 10000
5 15000 第二张表中的数据,是第一张表中前几列数据之和,比如说:第二张表中的第3行数据为6000,是由第一张表中前3列1000+2000+3000,这三个数相加之和,问:这种情况如何用SQL语句实现,请各位大侠指点
解决方案 »
- 求助一简单问题
- 存储过程里的 WHERE EmployeeID in (@id) 如何传参数?
- ORACLE11G R2的性能是Sql server 2008 r2的近10倍,不管你信不信,反正我信了
- 2个表中列中值互换
- 关于insert into 语句,我用一个错误的语句来表达我的意思
- 统计参与人数(去掉重复人数)的mysql?
- 怎么用sql语句显示的时候在最后一行统计出某列总额?
- SQL的存储过程难道不用了吗?
- 怎样将软盘上的数据,报盘到SQLSERVER2000数据库中(不能将原来的数据覆盖),谢谢!!
- 呜呜~我的数据库备份为什么不行?(简单,送分)
- 把变量名指定到表
- 关于SQL Server 2005的一个问题。
-- -----------t_mac 小编-------------
---希望有天成为大虾----
-- =========================================IF OBJECT_ID('tb') IS NOT NULL
DROP TABLE tb
GO
CREATE TABLE tb(id int ,num int )
go
insert tb SELECT
1, 1000 UNION ALL SELECT
2 , 2000 UNION ALL SELECT
3 , 3000 UNION ALL SELECT
4 , 4000 UNION ALL SELECT
5 , 5000
go
select *,SUMa=(SElect SUM(num) from tb where id<=t.id)
from tb tgo
/*------------
id num SUMa
----------- ----------- -----------
1 1000 1000
2 2000 3000
3 3000 6000
4 4000 10000
5 5000 15000(5 行受影响)
-------*/
INSERT @TB
SELECT 1, 1000 UNION ALL
SELECT 2, 2000 UNION ALL
SELECT 3, 3000 UNION ALL
SELECT 4, 4000 UNION ALL
SELECT 5, 5000SELECT ID,(SELECT SUM(COL) FROM @TB WHERE ID<=T.ID) AS COL
FROM @TB AS T
/*
ID COL
----------- -----------
1 1000
2 3000
3 6000
4 10000
5 15000
*/
insert into tb select 1, 1000
union all select 2, 2000
union all select 3, 3000
union all select 4, 4000
union all select 5, 5000
select id,b=(select sum(b) from tb where id<=t.id ) from tb t
/*id b
----------- -----------
1 1000
2 3000
3 6000
4 10000
5 15000(5 行受影响)*/
select sum(a.b) from tb a inner join tb b on
a.id <= b.id group by (b.id)-----------
1000
3000
6000
10000
15000
insert into tb select 1, 1000
union all select 2, 2000
union all select 3, 3000
union all select 4, 4000
union all select 5, 5000 --
select id,b=(select sum(b) from tb where id<=t.id) from tb t