日期:2014-05-16  浏览次数:20931 次

菜鸟求大神指点oracle怎么写多表update语句,谢谢
A表  ID01 地址1
001        ABC

B表 ID     ID01
aaa      001
aaa       002

C表 ID        地址2
aaa    DEF

怎么把A表的地址1   ABC 修改成  DEF     oracle11G的环境    语句怎么写啊

------解决方案--------------------
引用:
A表  ID01 地址1
001        ABC

B表 ID     ID01
aaa      001
aaa       002

C表 ID        地址2
aaa    DEF

怎么把A表的地址1   ABC 修改成  DEF     oracle11G的环境    语句怎么写啊


update a
   set a.addr1 =
       (select c.addr2
          from b, c
         where a.id01 = b.id01
           and b.id = c.id);

------解决方案--------------------

update a
   set a.addr1 =   (select c.addr2     from b, c   where a.id01 = b.id01  and b.id = c.id)
where exitsts(select * from b, c   where a.id01 = b.id01  and b.id = c.id)