0
我有2個表 - 表A包含來自當前系統的數據和包含遺留數據的表B.如果匹配,我試圖通過附加表B的連接數據來更新表A上的一個字段。Oracle:根據兩個表之間的比較更新列
但是,由於數據的性質,沒有單一的ID字段,匹配標準是姓名,出生日期和婚前姓名字段。
我認爲以下可能工作,但我遇到了「SQL錯誤:ORA-00933:SQL命令未正確結束」。
UPDATE A
SET A.HISTORY = A.HISTORY ||'Org:= ' || B.ORG ||' | Group:= ' || B.GROUP || ' | Campus:= ' || B.CAMPUS || ' | Year:= ' || B.YEAR || ' | Comments:= ' || B.COMMENT
FROM CURRENT_DATA A, LEGACY_DATA B
WHERE A.DOB = B.BDOB
AND A.FIRST_NAME = B.FIRST_AA
AND A.MIDDLE_NAME = B.MID_AB
AND A.LAST_NAME = B.LAST_AC
AND A.MAIDEN_NAME = B.MAIDEN_AD;
任何人都可以在正確的方向指向我:上述查詢?
謝謝,Munir。我確實得到了多個Subquery(Select)的結果,A中的每一行與B中的匹配。我缺少一個標準嗎?就數據而言,A中的每條記錄都不會與B中的匹配。 – pratyk
我的意思是A中的每一行都應該匹配B中的一行或幾行,它不應該在B中有多行。我認爲你應該沒問題。嘗試在虛擬桌面上測試它,看看它是否有效。 – Munir