SQL更新查询使用多个字段更新另一个表中具有合计值的表格

问题描述:

我有表A,其中包含不同的姓名,部门,工作状态和名为收入的空字段。我有第二张表,其中有许多行,名称,部门和州工作匹配表A和收入字段。我想运行更新查询,将全为不同名称的收益,部,国家制定的记录,并把收益字段值表ASQL更新查询使用多个字段更新另一个表中具有合计值的表格

表A:
艾伦,销售,CO
艾伦,销售,CA
保罗,发展,CO
保罗,发展,CA

表B:
艾伦,销售,CO,$ 100
艾伦,销售,CO,$ 150
艾伦,销售,CA,$ 200
保罗,发展,CO,$ 100
保罗,发展,CA,$ 200
保罗,发展,CA $ 300为

所需的结果(表一):
艾伦,销售,CO,$ 250
艾伦,销售,CA,$ 200
保罗,发展,CO,$ 100
保罗,发展,CA,$ 500

UPDATE A 
SET A.Earning = B.TotalEarning 
FROM tableA A 
INNER JOIN (SELECT Name, Dept, State , SUM(Earning) TotalEarning 
      FROM TableB 
      GROUP BY Name, Dept, State) B 
ON A.Name = B.Name 
AND A.Dept = B.Dept 
AND A.State = B.State 
+0

你这么老同学,不使用CTE的:) – JamieD77