这是结果表:
student_id | subject_id | get_ca1 | get_ca2 | get_exam | get_total
----------------------------------------------------------------------
101 | 1 | 10 | 7 | 10 |
102 | 2 | 5 | 5 | 10 |
103 | 1 | 9 | 10 | 4 |
101 | 1 | 8 | 10 | 10 |
103 | 2 | 2 | 10 | 10 |
104 | 1 | 7 | 8 | 5 |
101 | 2 | 7 | 8 | 5 |
我想创建一个触发器,该触发器将对get_ca1 + get_ca2 ...+ get_exam
行求和,并将总和存储在get_total
列中。当插入get_ca1, get_ca2,... get_exam
行时,触发器应计算总和并将其存储在get_total
列中。
我今天刚学了触发器,所以我对它一点也不了解。但是到目前为止,我试过了,当然它抛出了一个错误。
CREATE TRIGGER `sum total ` AFTER INSERT ON `exam_group_exam_results`
FOR EACH ROW SET get_tot_score = (get_ca1 + get_ca2 + get_ca3 + get_ca4 + get_ca5 + get_ca6 + get_exam);
1条答案
按热度按时间yzckvree1#
Mysql不知道你的列在哪里,因为你缺少对NEW行的引用。
此外,您只能在插入行之前更改值
所以使用了