MySQLのトリガー内で集計関数を使用します
-
20-09-2019 - |
質問
「年齢」を含むいくつかの属性を持つ「人々」テーブルがあります。このテーブルに新しいタプルを挿入するたびに、テーブルにリストされているすべての人々の平均年齢を知りたいと思います。平均が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(年齢)を選択する方が良いでしょう
所属していません StackOverflow