将SQL表中的值合并到第二个表中
我在SQL Server 2012中有一个主表,其中包含许多字段 我得到了一个包含新数据的excel spreadhseet,因此我首先将其导入SQL数据库中的一个新表中 新表只有两列“ID”和“Source” 新表中的ID与主表中的“ID”匹配,主表中还有一个名为“Source”的字段 我需要做的是用新表中的相应值更新主表中“Source”的值,确保两个表之间的ID匹配 现在要查询和查看所有信息,我可以使用以下-将SQL表中的值合并到第二个表中,sql,Sql,我在SQL Server 2012中有一个主表,其中包含许多字段 我得到了一个包含新数据的excel spreadhseet,因此我首先将其导入SQL数据库中的一个新表中 新表只有两列“ID”和“Source” 新表中的ID与主表中的“ID”匹配,主表中还有一个名为“Source”的字段 我需要做的是用新表中的相应值更新主表中“Source”的值,确保两个表之间的ID匹配 现在要查询和查看所有信息,我可以使用以下- SELECT m.ID, n.Source FROM MainTable AS
SELECT m.ID, n.Source
FROM MainTable AS m
INNER JOIN NewTable AS n ON m.ID = n.ID
但我不知道如何将其转换为UPDATE语句,以便将新表中“Source”的值插入到主表中相应的列中
UPDATE
MainTable
SET
MainTable.Source = NewTable.Source
FROM
MainTable
INNER JOIN
NewTable
ON
MainTable.ID = NewTable .ID
这应该可以做到,首先修改主表,然后:
update a
SET a.Source = b.Source
FROM MainTable a
JOIN NewTable b
on a.ID = b.ID
你可以
UPDATE MainTable
SET MainTable.Source = NewTable.Source
FROM NewTable
WHERE MainTable.ID = NewTable .ID
是-抱歉,更新类型语句(不是插入)-将修改问题