您的位置:首页 > 数据库 > Oracle

oracle下表关联更新

2011-03-21 15:39 387 查看
sqlserver中有update set from where用法,oracle中没有这种用法

可以使用如下办法实现

update tbA a

set a.colA=(select b.colB from tbB b where a.colC=b.colC)

where exists (select 1 from tbA a,tbB b where a.colC=b.colC)

删除多余行

delete from tb a where exists(select 1 from tb b where a.name=b.name and a.aaa >b.aaa)

字段名 name aaaa
aa 1
aa 2
bb 1
bb 2
cc 1
dd 2
期望的结果是

字段名 name aaaa
aa 1(2也可以)
bb 1(2也可以)
cc 1
dd 2
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: