MySQL 触发器根据另一个 table 的列总和更新字段
MySQL triggers to update field based on sum of column from another table
我有两个 table 'survey' 和 'results'
survey table
-----------------------------------------------
survey_id | name | p1q1 | p1q2 | p1q5
-----------------------------------------------
1 | John | 10 | 10 | 5
-----------------------------------------------
2 | Erick | 12 | 15 | 23
-----------------------------------------------
results table
id | Uptake | PY5Q1 |
----------------------------
1 | AZT | NULL |
----------------------------
2 | UPDP | NULL |
----------------------------
我是触发器的新手,我正在尝试弄清楚如何在调查 table 中获取 p1q5 的总和并将其更新为 PY5Q1,其中 id = 1 结果 table
任何想法将不胜感激
CREATE TRIGGER `results` AFTER INSERT ON `survey` FOR EACH ROW BEGIN
UPDATE results SET PY5Q1=(SELECT SUM(p1q5)) WHERE id=1;
END
CREATE TRIGGER `results` AFTER INSERT ON `survey` FOR EACH ROW
BEGIN
UPDATE results SET PY5Q1=(SELECT SUM(p1q5)FROM survey) WHERE id=1;
END
我有两个 table 'survey' 和 'results'
survey table
-----------------------------------------------
survey_id | name | p1q1 | p1q2 | p1q5
-----------------------------------------------
1 | John | 10 | 10 | 5
-----------------------------------------------
2 | Erick | 12 | 15 | 23
-----------------------------------------------
results table
id | Uptake | PY5Q1 |
----------------------------
1 | AZT | NULL |
----------------------------
2 | UPDP | NULL |
----------------------------
我是触发器的新手,我正在尝试弄清楚如何在调查 table 中获取 p1q5 的总和并将其更新为 PY5Q1,其中 id = 1 结果 table 任何想法将不胜感激
CREATE TRIGGER `results` AFTER INSERT ON `survey` FOR EACH ROW BEGIN
UPDATE results SET PY5Q1=(SELECT SUM(p1q5)) WHERE id=1;
END
CREATE TRIGGER `results` AFTER INSERT ON `survey` FOR EACH ROW
BEGIN
UPDATE results SET PY5Q1=(SELECT SUM(p1q5)FROM survey) WHERE id=1;
END