Welcome 微信登录

首页 / 数据库 / MySQL / Oracle 两个表之间更新的实现

前提条件:表info_user中有字段id和name,字段id为索引表data_user_info中有字段id和name,字段id为索引其中表info_user中字段id和表data_user_info中字段id数值一致。要求实现:更新表info_user中的字段name 与表data_user_info中字段name一致。实现的SQL语句为:update info_user i set (i.name) = (select  d.name from data_user_info d where d.id = i.id)where i.id = (select d.id from data_user_info d where d.id = i.id);commit;-------------------------分割线-------------------------Oracle中,如果跨两个表进行更新,Sql语句写成这样Update Table a set a.ID=Table2.ID where a.Name = Table2.Name Oracle 不会通过。查了资料,Sql语句需要这样写才行Update Table a set a.ID=(select b.ID from Table2 b where b.Name = a.Name ) where exist (select 1 from Table2 b.Name=a.Name) 更新多个字段也可以Update Table a set a.ID=(select b.ID from Table2 b where b.Name = a.Name ),a.Code=(select b.Code from Table2 b where b.Name = a.Name ) where exist (select 1 from Table2 b.Name=a.Name)Oracle 11.2.0.3 ORA-12012 ORA-29280 ORA-06512 错误 解决方法Oracle 获取执行计划相关资讯      Oracle 两表更新  Oracle 更新  本文评论 查看全部评论 (0)
表情: 姓名: 字数