最初由 ShingU 发布
[B]update (select t1.col1 col1t1,t2.col1 col1t2 from t1,t2 where t1.col2 = t2.col2 and ...)
set col1t1 = col1t2; [/B]
SQL> Select * from seer1 t
2;
AB1
T
-------------------------------------------------------------------------------- ----------
MAP_F_DECLAREDETTAXITEMVEH
22
MAP_F_INV_PRINTUSEQUERY
23
MAP_F_INV_PRINTQUERY
24
MAP_F_INV_PCEAANALYZE
25
5481122
26
1234
27
6 rows selected
SQL> Select * from seer t;
AB
T
-------------------------------------------------------------------------------- ----------
MAP_F_DECLAREDETTAXITEMVEH
22
MAP_F_INV_PRINTUSEQUERY
23
MAP_F_INV_PRINTQUERY
24
MAP_F_INV_PCEAANALYZE
25
26
27
6 rows selected
SQL>
SQL> Update (Select x.Ab1 ,y.AbFrom seer1 x,seer y Where x.t=y.t)
2Set ab1 =ab
ORA-01779: 无法修改与非键值保存表对应的列
SQL>
SQL> Update (Select x.Ab1 uu1,y.Abuu2 From seer1 x,seer y Where x.t=y.t)
2Set uu2 =uu1
3;
Update (Select x.Ab1 uu1,y.Abuu2 From seer1 x,seer y Where x.t=y.t)
Set uu2 =uu1
ORA-01779: 无法修改与非键值保存表对应的列
这样应该是不对的,没有这样的update写法吧!
请高手再求证!!!
|