gpt4 book ai didi

mysql - 使用 GROUP BY 更新相关的所有记录

转载 作者:行者123 更新时间:2023-11-29 05:31:48 26 4
gpt4 key购买 nike

我有 2 个表 word_listsmemo_words,word_list 有很多 memo_words (1 - n)。

TABLE: word_lists
+----+----------+----------------+
| id | name | average_rating |
+----+----------+----------------+
| 1 | example1 | ? |
| 2 | example2 | ? |
| 3 | example3 | ? |
+----+----------+----------------+
ID is primary

TABLE: memo_words
+----+----------+-------+-------------------+
| id | name | rating| word_list_id |
+----+----------+-------+-------------------+
| 1 | random1 | 153 | 1 |
| 2 | random2 | 158 | 1 |
| 3 | random3 | 167 | 1 |
+----+----------+-------+-------------------+
ID is primary

我想为每个 word_lists 记录计算 word_lists.average_rating。平均评分 这是 memo_words.rating 中每个 memo_words 记录的平均值。为了计算平均值,我可以简单地使用这样的东西:

  SELECT id, AVG(rating) from memo_words group_by word_list_id;

但是我怎样才能更新 word_lists 记录呢?

最佳答案

最简单的方法是:

Update word_list
set average_rating = (select AVG(mw.rating)
from memo_words mw
where mw.word_list_id = word_list.id
)

关于mysql - 使用 GROUP BY 更新相关的所有记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14084618/

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