簡體   English   中英

將一列從數據庫表復制到另一數據庫表sql server中的另一列

[英]Copy one column from a database table to another column in another database table sql server

我有兩個數據庫(A和B),直到我弄亂了數據庫A的表T1中的一列為止,兩個數據庫都是相同的...基本上將該列中的所有記錄都設置為NULL。 如何用數據庫B中等效列中的正確數據更新數據庫A中T1中的不正確列?

我的插入命令不起作用,因為數據庫A的T1中有更多列,不允許插入空值。

insert into A.dbo.finance (finishdate)
select finishdate 
from B.dbo.finance

我厭倦了進行內部聯接,但是它說“無法綁定多部分標識符”。 不幸的是,數據庫A中其他表中的數據此后發生了變化,因此僅使用數據庫B是不可行的:-)

有人可以幫忙嗎?

如果ID是兩個表的id列,則應將它們加入並更新所需的表:

UPDATE A.dbo.finance
SET    finishdate = B.finishdate 
FROM   A.dbo.finance A
       JOIN B.dbo.finance B
           ON A.ID = B.ID

數據庫B

Select finishdate into ##temp from dbo.finance B where 1 = 1

數據庫A

    insert into dbo.finance(finishdate)
    select * from ##temp t where NOT EXISTS
(Select 1 from dbo.finance WHERE finishdate <> t.finishdate  )

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM