我有一个'人员'表,其中包含几个属性,包括'年龄'。每次我在这个表中插入一个新元组时,我想知道表中列出的所有人的平均年龄。如果平均值高于50,我想修改插入元组的年龄。我正在使用'BEFORE INSERT'触发器。这是我目前的测试代码(您可以忽略'分隔符'行):
delimiter |
CREATE TRIGGER checkAge BEFORE INSERT ON People
FOR EACH ROW BEGIN
IF AVG(age) > 50 THEN
SET NEW.age = 20;
END IF;
END
|
delimiter ;
我做错了什么?
答案 0 :(得分:0)
您只计算1个值的平均值(每行) 你最好使用SELECT AVG(age)FROM People