用于将数据从一个表合并到另一个表的T-SQL

时间:2009-04-06 21:52:14

标签: sql sql-server sql-server-2008

假设有2个表Table1 {ID,Name,Other}和Table2 {ID,Name,Other}。除了Table1中的所有Name值都为NULL之外,它们都具有相同ID的相同记录。如何使用T-SQL(SQL Server 2008)将表值从Table2导入到Table1?

4 个答案:

答案 0 :(得分:4)

Update Table1
Set Table1.Name = Table2.Name
From
Table1 INNER JOIN Table2 on Table1.ID = Table2.ID

答案 1 :(得分:1)

你正在寻找MERGE命令,就像你可能在其他地方读过的UPSERT一样。这是关于它的quick article

答案 2 :(得分:0)

UPDATE Table1
SET Table1.Name = Table2.Name
FROM Table2
WHERE Table1.Id = Table2.Id
--AND Table1.Name IS NULL

答案 3 :(得分:0)

只需加入表并更新:

update t1
set [Name] = t2.Name
from Table1 t1
inner join Table2 t2 on t2.ID = t1.ID