
mysql left join 更新表中多个记录的最大值
想要将 student 表的 score 字段更新为 score 表中同个 student_id 下的最大值,可以使用 left join 语句。
示例:
student 表
| id | name | score |
|---|---|---|
| 1 | 小明 | null |
| 2 | 小红 | null |
score 表
| id | student_id | score |
|---|---|---|
| 1 | 1 | 80 |
| 2 | 2 | 88 |
| 3 | 1 | 78 |
| 4 | 2 | 98 |
更新查询
update student set score = ( select max(score) from score where score.student_id = student.id )
执行此查询后,student 表将更新为:
| id | name | score |
|---|---|---|
| 1 | 小明 | 80 |
| 2 | 小红 | 98 |










