MYSQL触发器更新表

MYSQL触发器更新表,mysql,triggers,Mysql,Triggers,我从来没有扣过扳机 我有两张桌子: MOVIES TABLE --------------------------------- movie_id | movie_name | rating | --------------------------------- | 1 | Inception | 4 | | 2 | Memento | 5 | | 3 | Spiderman | 3 | RATING TABLE

我从来没有扣过扳机

我有两张桌子:

MOVIES TABLE
---------------------------------
movie_id  | movie_name | rating |
---------------------------------
|    1    | Inception  |   4    |
|    2    |  Memento   |   5    |
|    3    | Spiderman  |   3    |


RATING TABLE
-------------------------------
rating_id | mov_id | rating   |
-------------------------------
|    1    |    1     |   4    |
|    2    |    2     |   5    |
|    3    |    2     |   5    |
在评级表中插入数据后,我想更新电影表的评级列。 如何使用以下数据更新该列:

SELECT ROUND(AVG(rating),1) "Raiting" FROM `rating` WHERE mov_id = mov_id
试试这个:

delimiter //
CREATE TRIGGER upd_rating AFTER INSERT ON rating
FOR EACH ROW
BEGIN
     INSERT INTO movies
     SET rating = (SELECT ROUND(AVG(rating.rating),1)
                   FROM rating
                   WHERE mov_id = NEW.mov_id)
     WHERE movie_id = NEW.mov_id;
END;//
delimiter ;

嗯,当这是第一次,大多数人谷歌的语法。通过谷歌搜索mysql创建触发器来实现这一点。手册里也有例子,你知道吗?那就试试吧。如果你没有成功,欢迎回来。别忘了把你尝试过的东西和失败的原因贴出来。然后我们很高兴能提供帮助。我已经尝试过了,因为我失败了,我在这里发了帖子:|无论如何谢谢是的,那么请展示一下你的尝试。这样不仅更容易理解问题所在,也省去了我们一些工作。帮助别人帮助你;