首页 > 文章列表 > 如何使用 MySQL left join 更新表中多个记录的最大值?

如何使用 MySQL left join 更新表中多个记录的最大值?

277 2024-12-17

如何使用 MySQL left join 更新表中多个记录的最大值?

mysql left join 更新表中多个记录的最大值

想要将 student 表的 score 字段更新为 score 表中同个 student_id 下的最大值,可以使用 left join 语句。

示例:

student 表

idnamescore
1小明null
2小红null

score 表

idstudent_idscore
1180
2288
3178
4298

更新查询

update student set score = (
  select max(score)
  from score
  where score.student_id = student.id
)

执行此查询后,student 表将更新为:

idnamescore
1小明80
2小红98
来源:1731228883