22,210
社区成员
发帖
与我相关
我的任务
分享
SELECT a.ksdm,SUM(a.zje)
FROM (SELECT * FROM A表 UNION ALL SELECT * FROM B表)a
GROUP BY a.ksdm
SELECT a.ksdm,sum(a.zje)+sum(b.zje)
FROM A表 a,B表 b
WHERE a.ksdm=b.ksdm
GROUP BY a.ksdm
----------------------------------------------------------------
-- Author :fredrickhu(小F,向高手学习)
-- Date :2012-07-11 10:55:48
-- Version:
-- Microsoft SQL Server 2008 R2 (RTM) - 10.50.1617.0 (Intel X86)
-- Apr 22 2011 11:57:00
-- Copyright (c) Microsoft Corporation
-- Enterprise Edition on Windows NT 6.1 <X64> (Build 7600: ) (WOW64)
--
----------------------------------------------------------------
--> 测试数据:[A]
if object_id('[A]') is not null drop table [A]
go
create table [A]([ksdm] varchar(2),[zje] int)
insert [A]
select '01',100 union all
select '02',200 union all
select '03',250
--> 测试数据:[b]
if object_id('[b]') is not null drop table [b]
go
create table [b]([ksdm] varchar(2),[zje] int)
insert [b]
select '02',150 union all
select '03',100 union all
select '04',500
--------------开始查询--------------------------
select
ksdm,sum(zje) as zje
from
(select * from A union all select * from b)t
group by
ksdm
----------------结果----------------------------
/* ksdm zje
---- -----------
01 100
02 350
03 350
04 500
(4 行受影响)
*/