我有以下声明,需要创建更新。
Select p.POS_NR, p1.VON_POS_NR
FROM table1 p. inner join table2 p1
ON p.Bestell_NR = p1.Vorgangs_NR
and p.Bestell_pos = p1.Vorgangs_pos
where NOT (p.POS_NR = p1.Von_Pos_NR)
现在我想等于p.POS_NR和p1.Von_POS_NR,但我不知道如何创建更新
我希望有人可以帮助我
答案 0 :(得分:0)
您可以使用MERGE语句执行此操作。我假设TABLE1有一个名为KEY_FIELD的主键字段 - 您可以根据需要进行替换:
MERGE INTO TABLE1 t1
USING (SELECT p.KEY_FIELD, p.POS_NR, p1.VON_POS_NR
FROM TABLE1 p
INNER JOIN TABLE2 p1
ON p.BESTELL_NR = p1.VORGANGS_NR and
p.BESTELL_POS = p1.VORGANGS_POS
WHERE NOT (p.POS_NR = p1.VON_POS_NR) d
ON (d.KEY_FIELD = t1.KEY_FIELD)
WHEN MATCHED THEN
UPDATE
SET t1.POS_NR = d.VON_POS_NR;
祝你好运。