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
你这么老同学,不使用CTE的:) – JamieD77