gpt4 book ai didi

mysql - 使用另一个表中的 avg() 进行更新?

转载 作者:行者123 更新时间:2023-11-29 06:37:36 25 4
gpt4 key购买 nike

使用MySQL

我必须为 Movies 表创建一个平均字段来保存每部电影的平均分数。实际分数保存在 Ratings 表中,该表按 mid(电影 ID)引用电影。您将如何使用从评分中的“分数”列中找到的平均值更新电影中的每一行?

我试过 JOINS,但它们似乎不适用于 MySQL。有什么建议么?提前致谢!

最佳答案

您可以通过 updatejoin 来做到这一点:

update movies m join
(select mid, avg(score) as avgscore
from ratings r
group by mid
) r
on m.mid = r.mid
set m.avgscore = r.avgscore;

当然,这只会更新一次值。如果您想使平均值保持最新,则需要创建一个触发器来重新设置该值。

关于mysql - 使用另一个表中的 avg() 进行更新?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23532206/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com