在网上看到这么一个方法:
update
(select A.bnum ,A.newqiantity,B.qiantity from A left join B on A.bnum=B.bnum) AS C
set C.newqiantity = C.qiantity
where C.bnum =XX 我试着 update (select j.name,c.ph
from jbb j
left join jcb c on j.woman = c.woman) AS c
set c.name = 'test'
where c.ph>100为什么总提示 " MISSING SET KEYWORD"
-------------
我试着用这种更新方法就是。。奇怪他能用构造一个虚表。然后更新虚表的某个字段。就会相应更掉组成虚表的实表字段吗达人解释....
update
(select A.bnum ,A.newqiantity,B.qiantity from A left join B on A.bnum=B.bnum) AS C
set C.newqiantity = C.qiantity
where C.bnum =XX 我试着 update (select j.name,c.ph
from jbb j
left join jcb c on j.woman = c.woman) AS c
set c.name = 'test'
where c.ph>100为什么总提示 " MISSING SET KEYWORD"
-------------
我试着用这种更新方法就是。。奇怪他能用构造一个虚表。然后更新虚表的某个字段。就会相应更掉组成虚表的实表字段吗达人解释....
update
(select A.newqiantity ne,B.qiantity qi from A left join B on A.bnum=B.bnum and a.bnum =XX )
set ne= qi
from jbb j
left join jcb c on j.woman = c.woman) AS c
这里有问题.
(select employee_id,last_name from employees where employee_id = 100) C
set c.last_name = 'KK'
单表更新应该没问题,但是多表关联的时候这样更新能成功吗?我怎么执行都报错。
ora-01779:cannot modify a column which maps non key-preserved table