【发布时间】:2014-02-20 10:37:07
【问题描述】:
假设我有以下表格
目标表
sales
ID ItemNum DiscAmt OrigAmt
1 123 20.00 NULL
2 456 30.00 NULL
3 123 20.00 NULL
源表
prices
ItemNum OrigAmt
123 25.00
456 35.00
我尝试使用源表中的 OrigAmt 更新目标表中的 OrigAmt
UPDATE
( SELECT s.OrigAmt dests
,p.OrigAmt srcs
FROM sales s
LEFT JOIN prices p
ON s.ItemNum = p.ItemNum
) amnts
SET amnts.dests = amnts.srcs
;
但我得到:ORA-01779:无法修改映射到非键保留表的列 我也尝试使用合并,但我得到:ORA-30926:无法在源表中获得一组稳定的行
【问题讨论】:
-
你的源表在
ItemNum上是唯一的吗? -
是的,它是独一无二的,很抱歉错过了
标签: oracle