我有一個會計事務處理表,我試圖將它們複製到一個新表中。我已經制作出了副本,但我需要使用源表中的任何新事務更新副本。我遇到的問題是,源數據來自報告,該報告鏈接許多不同來源來創建這些交易,並且沒有唯一的密鑰。更新查詢以獲取沒有唯一鍵的新記錄?
如果我有一個唯一的鍵,我會創建一個更新查詢,並執行從源表到被複製表的左連接,並且只要複製表中的鍵值爲空,就更新這些字段。
由於我沒有一個唯一的密鑰,我不知道如何做到這一點。有任何想法嗎?
-----編輯由於答案-----
SourceTable
Field1 Field2 Field3
CopiedTable
Field1 Field2 Field3
所以更新與新記錄,我會做這個CopiedTable?
UPDATE CopiedTable SET
CopiedTable.Field1 = SourceTable.Field1,
CopiedTable.Field2 = SourceTable.Field2,
CopiedTable.Field3 = SourceTable.Field3
WHERE (SourceTable.Field1 <> CopiedTable.Field1 AND
SourceTable.Field2 <> CopiedTable.Field2 AND
SourceTable.Field3 <> CopiedTable.Field3)
那麼你應該怎麼知道什麼是更新的價值? – Lamak 2012-03-09 16:12:39
所有字段的組合將使得它獨一無二的是我的假設,我不確定它所需的最少字段數是否是唯一的 – chucklukowski 2012-03-09 16:17:50