2016-03-22 85 views
0

列中插入值到專欄中,我現在有一個情況下,我將有2個表:基於在單獨的表

+--------------+-----------------+-----------------+-----------------+ 
| OriginalID | NewID   | FirstName  | lastName  | 
+--------------+-----------------+-----------------+-----------------+ 
|  123456 |     |  billy  |  bob  | 
|  234567 |     |  tommy  |  smith  | 
|  987654 |     |  sarah  |  anders  | 
+--------------+-----------------+-----------------+-----------------+ etc etc 

+--------------+-----------------+ 
| OriginalID | NewID   | 
+--------------+-----------------+ 
|  123456 | 1111111  | 
|  234567 | 1111112  | 
|  987654 | 1111113  | 
+--------------+-----------------+ 

沒有去深入到這個過程本身,我從第一個表中取記錄並將其插入到另一個系統中,該系統以第二個表的形式給出記錄(爲其生成一個自定義ID)。

我想要做的就是在第二個表中的每個記錄,以newid的,並將其放置到排在第一個表中的同一OriginalID(所以它看起來是這樣的:

+--------------+-----------------+-----------------+-----------------+ 
| OriginalID | NewID   | FirstName  | lastName  | 
+--------------+-----------------+-----------------+-----------------+ 
|  123456 | 1111111  |  billy  |  bob  | 
+--------------+-----------------+-----------------+-----------------+ 

需要注意的是,我唯一值得關注的就是OriginalID和NewID,其他值都不需要,這會發生在多個不同名字的表上,所以我給出了一個通用的例子。被稱爲

ContactRecords (first table) and NewContact (second table) 

我已閱讀過s關於這種類型的問題的SO的幾個例子,但沒有一個非常適合我正在尋找的解決方案。

在此先感謝!

回答

1

這看起來像我們在這裏多次加入的更新。

update old 
set NewID = new.NewID 
from ContactRecords as old 
    inner join NewContact as New on new.OriginalID = old.OriginalID 
+0

這樣做的竅門!我很抱歉,我錯過了其他地方的答案,並感謝您爲我寫出來! – Br0k3nL1m1ts