我有一个带有几个属性在内的“人”桌子。每次我将一个新的元组插入此表中时,我都想找出表中列出的所有人的平均年龄。如果平均值高于50,我想修改插入元组的年龄。我正在为此使用“插入”触发器。这是我当前拥有的测试代码(您可以忽略“定界符”行):

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 ;

我究竟做错了什么?

有帮助吗?

解决方案

您的平均值仅为1个值(每行)您最好使用人的选择AVG(年龄)

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top