我有一个查询的SQL语句请教,希望能够用一条SQL语句得到结果,问题如下:
表X:
ABCD
------------------
北京广州100010
北京深圳120020
北京上海50030
北京天津30040
北京河南80020
表Y:
AB
----------
北京深圳
北京上海
表Z:
ABCD
------------------
北京广州20010
北京上海-100-10
北京四川80050
目的:从表X中去除表Y中关键字相同的数据,再加上表Z中的数据,关键字相同的要累计(A,B为关键字)
得到如下结果:
ABCD
------------------
北京广州120020
北京上海40020
北京河南80020
北京四川80050
复制代码 代码如下:
selecta,b,sum(c)asc,sum(d)asdfrom
(select*fromxunionallselect*fromz)t
wherenotexits(select1fromywherey.a=t.aandy.b=t.b)
groupbya,b