oracle替换表merge,sql – Oracle – 如何使用merge根据其他表和列中的值更新列
我想根據與其他列和其他表的值比較更新closed_date列中的值.我用Oracle合并到聲明中.但它給了我一個錯誤:
錯誤:ORA-00969:缺少ON關鍵字
我不確定出了什么問題.我想念什么嗎?以下是我的腳本:
MERGE INTO PR_DMN dmn
USING (select alg.PR_DMN_ID, alg.PR_ACTIVITY_ID, alg.ACTIVITY_TS from PR_ACTIVITY_LOG) alg
ON dmn.PR_DMN_ID = alg.PR_DMN_ID
-- update
WHEN MATCHED THEN
UPDATE SET dmn.CLOSED_DATE =
(CASE
WHEN alg.PR_ACTIVITY_ID IN ('10009', '10010', '10011', '10013') THEN alg.ACTIVITY_TS
WHEN alg.PR_ACTIVITY_ID = '10005' AND dmn.CONT_RESP_TS <= dmn.CONT_RESP_DUE_TS THEN dmn.CONT_RESP_TS
WHEN alg.PR_ACTIVITY_ID = '10008' AND dmn.CORR_RESP_TS <= dmn.CORR_RESP_DUE_TS THEN dmn.CORR_RESP_TS
ELSE dmn.CLOSED_DATE
END)
總結
以上是生活随笔為你收集整理的oracle替换表merge,sql – Oracle – 如何使用merge根据其他表和列中的值更新列的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: oracle增量合并存储过程,怎么将视图
- 下一篇: 织梦php调用字段,织梦dedecms搜