sql 两表合并汇总

来源:百度知道 编辑:UC知道 时间:2024/05/28 08:03:40
表一
字段1 字段2 起初数量
71 naj 10
表二
字段1 字段2 发生数据
71 naj 5
71 naj 6

希望汇总合并数据
合并表
字段1 字段2 起初数据 发生数据
71 naj 10 11

我想楼主说的应该是这个意思:
select 字段1,字段2,sum(起初数量),sum(发生数据) from
(
select 字段1, 字段2, sum(起初数量) as 起初数量, 0 as 发生数据
from table1 group by 字段1,字段2
union
select 字段1, 字段2, 0 as 起初数量, sum(发生数据) as 发生数据
from table2 group by 字段1,字段2
) a
group by 字段1,字段2

因为表里面不可能就一两条数据-_-

create database test
go
create table t1
(
col1 int ,
col2 varchar(50),
startCounts int
)

go

create table t2
(
col1 int,
col2 varchar(50),
actionCounts int
)

create table t3
(
col1 int,
col2 varchar(50),
stratCounts int,
actionCounts int
)

insert into t3 (col1,col2,stratCounts ,actionCounts )
select a.col1,a.col2,a.startCounts,sum(b.actionCounts) as c
from t1 as a left join t2 as b on a.col1=b.col1 group by a.col1, a.col2,a.startCounts

select * from t3

select a.*,b.发生数据 from 表一 a
join
(
s