当前位置: 代码迷 >> Oracle管理 >> 多 表 更 新解决方案
  详细解决方案

多 表 更 新解决方案

热度:590   发布时间:2016-04-24 05:59:52.0
多 表 更 新
t1
-----------------------
id         A             B             C

t2
---------------------
id         F

如果满足条件:t1.id   =   t2.id   ,     t1.B   =   '0 ',   F   =   null
就把F的值设置为C
请问如何实现   ?

------解决方案--------------------
Update t2 set F=(Select C from t1 where t1.id=t2.id and t1.B = '0 ')
where F is null
------解决方案--------------------
update t2 ta set F=(select c from t1 tb where ta.id = tb.id and tb.B = 0
and exists(select 'X ' from t2 where ta.id = id and tb.B = '0 ' and F is null));
------解决方案--------------------
update t2 t_2
set t_2.F = 'C '
where exists (
select 1
from t1 t_1
where t_1.id = t_2.id
and t_1.B = '0 '
and t_2.F is null
);

试试看~~
  相关解决方案