首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > oracle >

小弟我想根据一张表的内容去更新另一张表该如何做

2013-10-25 
我想根据一张表的内容去更新另一张表该怎么做假设有表OBJECT(code,location,position。。。。),RELATION(code,

我想根据一张表的内容去更新另一张表该怎么做
假设有表OBJECT(code,location,position。。。。),RELATION(code,location,position。。。)。
现在object里面只有code的值,location和position为空,OBJECT的code与RELATION的code是相同的字段,也就是可以拿来做连接的条件。
现在我想把OBJECT里面的值更新,就是根据code到relation去查。
目前用存储过程先根据code去查出position和location之后再更新。但是做起来很慢,我也建了索引。有没有能够之间连接两张表然后直接一步到位的更新方法。 oracle 连接
[解决办法]
merge into
[解决办法]
直接更新不行么


update OBJECT a 
set (location,position) = (select location,position from RELATION b where a.code= b.code)

[解决办法]
MERGE INTO OBJECT A
USING RELATION B
ON A.CODE=B.CODE
WHEN MATCHED THEN 
UPDATE SET
A.POSITION=B.POSITION,
A.LOCATION=B.LOCATION

热点排行