我是SQL新手。我有一个表employee
,它有字段eID
和eLoad
。此外,我有ongoing_projects
表,pID
,eID
(这两个是主要的)和eLoad
。我试图为每个员工插入所有eLoad
的总和。我对伪代码有一个想法,但我无法实现它。有任何想法吗?谢谢!
For each eID in table employee
DO
UPDATE `employee` SET eload=(
SELECT SUM (eload) as eload
FROM ongoing_projects
);
答案 0 :(得分:2)
如果我理解它,你会想做类似的事情:
UPDATE employee e
SET e.eLoad = (SELECT SUM(op.eLoad) FROM ongoing_projects op WHERE op.eID=e.eID);
它使用employees.eLoad
的总和更新ongoing_projects.eLoad
列中的每一行,其中proceed_projects.eID =实际员工eID
或者,如果您希望使用employees.eLoad
与ongoing_projects eLoad
进行通信,则查询可能会显示:
UPDATE employee e
SET e.eLoad = e.eLoad + (SELECT SUM(op.eLoad) FROM ongoing_projects op WHERE op.eID=e.eID);