--先插入数据
INSERT INTO dbo.A
SELECT *
FROM B
WHERE NOT EXISTS (SELECT 1 FROM a WHERE a.a01=b.b01 AND a.a02=b.b02)
--然后把相同的取出来汇总
;WITH cte (a01,a02,a03)
AS
(
SELECT a01,a02 ,SUM(a03) a03
FROM a
GROUP BY a01,a02
)--更新数据
UPDATE a
SET a03=cte.a03
FROM a INNER JOIN cte ON a.a01=cte.b01 AND a.a02=cte.b02
------解决方案--------------------
update a set A03=A03+B.A03 B.A02=A.A02
FROM A JOIN B ON A.A02=B.B02
------解决方案-------------------- update A set A.A03=a.A03+b.b03
FROM A JOIN B ON A.A02=B.B02
晕。我只看到了累加到A数。看来我真的是菜鸟啊。。。。。一世都是菜鸟啊 ------解决方案-------------------- 你比那个小版主好多了。 ------解决方案-------------------- update A set A.A03=a.A03+b.b03
FROM A JOIN B ON A.A02=B.B02
select * from a
按我理解楼猪的要求
只是加数 ------解决方案-------------------- 但是如果B有,A没有,那么就漏了数据了 ------解决方案-------------------- 睡觉,明天在刷帖,今天到此为止 ------解决方案--------------------