22,207
社区成员
发帖
与我相关
我的任务
分享
if object_id('tempdb..#t') is not null
drop table #t
go
insert #t
select a.*,b.实际日期,b.实际金额 from 计划数据 a
inner join 实际数据 b
on a.序号=b.序号
insert #t
select distinct b.序号,'1900-01-01',0,b.实际日期,b.实际金额 from 计划数据 a,实际数据 b
where b.序号 not in
(select 序号 from 计划数据)
go
select * from #t
SET XACT_ABORT ON
begin tran
insert # (序号,计划日期,计划金额)
select 序号,计划日期,金额 from t1
update # set #.实际日期 = t2.实际日期,#.实际金额=t2.金额
select 实际日期,金额 from t2 where t2.序号=#.序号
insert # (序号,计划日期,计划金额,实际日期,计划金额)
select 序号,0,0,实际日期,金额 from t2 where 序号 not in(select 序号 from #)
commit tran
select 序号,计划日期, 金额 into #temp from 数据来源
select s.序号,计划日期,金额 ,实际日期,金额 from #temp t, [数据来源] s where t.[序号]=s.[序号]