在使用中遇到,有3张表,表1与表2关联,表2与表3关联,表1与表3没有关联。因为是两个数据库,现需要更新表1的数据,将表3中的数据写入表1。
例如:表1:code 表2:code 表3:
id id
name name
更新表3中的name到表1
第一种方法是是利用临时表: select 表2.code ,表3.name into temp from 表2,表3 where 表2.id=表3.id
update 表1 set 表1.name=temp.name where 表1.code=temp.code
drop table temp
第二种方法是:利用inner join on,一条语句就可以:
update 表1 set 表1.name=表3.name from 表1 ,表2 inner join 表3 on 表2.id=表3.id where 表2.code=表1.code
本文介绍两种方法来实现跨数据库的多表关联更新操作。第一种方法通过创建临时表来辅助更新过程;第二种方法则直接使用单条SQL语句完成更新,利用INNER JOIN ON进行表间连接。
1145

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



