0

我正在将数据从该表加载到一个临时表到新表中。但是我没有检查数据是否在源中可用?那么在这种情况下 Replace 选项的行为应该是什么?还要解释行为。

4

1 回答 1

0

您最好的选择是查看 Oracle MERGE 选项。您可以指定在什么条件下插入/删除/更新:

MERGE INTO target_table tt
USING stage_table st
ON (st.key = tt.key)
WHEN MATCHED THEN 
    UPDATE SET tt.colA = st.colA
    DELETE WHERE (st.delInd = 'Y')
WHEN NOT MATCHED THEN INSERT (tt.key, tt.colA)
    VALUES (st.key, st.colA);
于 2012-06-19T05:06:41.267 回答