微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

oracle 增删改查常技巧:

oracle 更新的三个方法
1、T2表的SEX等于T2表的SEX。这个方法只能对T2表进行WHERE更新,不能对T1表进行WHERE更新
update temp2 t2 set t2.sex=(select t1.sex from temp1 t1 where t1.id=t2.id)
where t2.age>50


2、T2表的SEX等于T2表的SEX。这个方法可同时对T1、T2表进行WHERE更新,且要更新的T2表中数据必须在T1中存在
update temp2 t2 set t2.sex=(select t1.sex from temp1 t1 where t1.id=t2.id)
where exists (select 1 from temp1 t1 where t1.id=t2.id and t1.age>50 and t2.age>50)


3、T2表的SEX等于T2表的SEX。这个方法可同时对T1、T2表进行WHERE更新,且要更新的T2表中数据必须在T1中存在
(这里由于使用了中间内存表,因此可以很方便地改变两表左、右、全、内连接的方法来控制要更新的T2表中的数据范围)
update (select t1.sex s1,t2.sex s2 from temp1 t1,temp2 t2 where t1.id=t2.id and t1.age>50 and t2.age>50)
set s2=s1

(注意:这个写法必须要求两张表关键条件的字段有唯一约束或主键约束,这也是为了保证查询的结果必须是一对一关系)


----未完待续-----

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐