使用MYSQL
我必须为表格创建平均字段以保存每部电影的平均分数。实际分数保存在表格评级中,该表格参考电影中期(电影ID)。您如何更新电影中的每一行,并使用“评分”栏中的“得分”列中找到的平均值?
我尝试了JOINS,但它们似乎不适用于MySQL。有什么建议?提前谢谢!
答案 0 :(得分:1)
您可以使用update
和join
:
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;
当然,这只会更新一次值。如果你想保持平均值是最新的,那么你需要创建一个触发器来重新设置值。