在mysql中一般更新我们都是通过 update set指定的值,但是有些时候,我们数据库中存在一些记录,这时候我们希望用已有数据库中的记录来进行更新,这时候我们可以通过mysql的update select语句来进行更新,通过使用另外一个表的数据来更新当前表数据:
update 待更新表 a
INNER JOIN 关联表 b
on a.id=b.id
set a.name=b.name ,a.age=b.age
where b.age > 30
示例
update test001 a
INNER JOIN test002 b
on a.id=b.id
set a.name=b.name ,a.age=b.age
where b.age > 30
而这里的join可以使用常见的join类型来进行关联。
另外MySQL中提供了insert ignore into语句,在插入的时候如果主键冲突,那么这个插入将不会被执行会忽略而不会报错。
本文介绍如何在MySQL中使用UPDATE SELECT语句,结合JOIN操作,根据关联表中的数据更新目标表,同时涵盖不同类型的JOIN和INSERT IGNORE特性。
6795

被折叠的 条评论
为什么被折叠?



