sql - 根据第一个表更新第二个表列
问题描述
我有两张桌子。一个是Employee
,另一个是Department
。
Employee 表有以下列:
Name | Salary | Department Id
部门表有
Department Id| Department Name | SumofSalary
我想明智地更新 SumofSalary 部门
我试过的代码
update Department set sumofsalary =
(
select D.deptid, SUM(E.salary) from Department D inner join Employesalary E
on d.deptid=e.deptid group by D.deptid
)
解决方案
以下将为您提供部门工资总和并在部门表中更新。
UPDATE D SET D.SumOfSalary = T.Salary FROM Department D JOIN
(
SELECT SUM(Salary) Salary, [Department ID] DeptID FROM Employee Group By [Deptartment ID]
) T ON T.DeptID = D.[Department ID]
推荐阅读
- delphi - 为什么帕斯卡不能写布尔值
- sql - SQL ORACLE 取消透视
- python - Python:为什么这些代码行显示不同的值?
- python - 如何在 Python 中过滤和写入多个文件?
- java - MongoDB:“MongoSocketException:mongodb:提供节点名或服务名,或未知”
- sql-server - SQL Server:引用其他视图的视图列表
- javascript - API 和接口(对象类型)如何可供 JavaScript 使用?
- javascript - 将参数传递到 URL
- java - Java:ImageIcon - 图像文件更新,但 Java 框架中的图像图标没有
- android - 步进器内的日期选择器