[英]Update record in sql table with a sum of values from other table
我是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
);
如果我理解它,您將希望執行以下操作:
UPDATE employee e
SET e.eLoad = (SELECT SUM(op.eLoad) FROM ongoing_projects op WHERE op.eID=e.eID);
它將employees.eLoad
列中的每一行更新為ongoing_projects.eLoad
的總和,其中progress_projects.eID =實際員工eID
或者,如果您希望使用ongoing_projects eLoad
來對employees.eLoad
進行SUM,則查詢可能看起來如下:
UPDATE employee e
SET e.eLoad = e.eLoad + (SELECT SUM(op.eLoad) FROM ongoing_projects op WHERE op.eID=e.eID);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.