SQL Server 2008 R2:合并查询
SQL Server 2008 R2 : Merge Query
我对 merge
使用以下语法:
MERGE INTO studentinfo as Target
USING StudentInfo_Temp as Source ON Target.Form Number = Source.Form Number
WHEN MATCHED THEN
UPDATE
SET Target.Form Number = Source.Form Number
WHEN NOT MATCHED THEN
INSERT ([Form Number], [Academic Program])
VALUES (Source.Form Number, Source.Academic Program);
但是我在
行收到上面的错误
on Target.Form Number = Source.Form Number
如果我用 Taget.ID = Source.ID 替换它,它工作正常,所以我假设我必须以其他方式写一个名称为 space 的专栏。
对正确的语法有什么建议吗?
使用方括号用空格将值括起来:
Target.[Form Number] = Source.[Form Number]
有关详细信息,请参阅 documentation 中的 定界标识符 部分。
我对 merge
使用以下语法:
MERGE INTO studentinfo as Target
USING StudentInfo_Temp as Source ON Target.Form Number = Source.Form Number
WHEN MATCHED THEN
UPDATE
SET Target.Form Number = Source.Form Number
WHEN NOT MATCHED THEN
INSERT ([Form Number], [Academic Program])
VALUES (Source.Form Number, Source.Academic Program);
但是我在
行收到上面的错误on Target.Form Number = Source.Form Number
如果我用 Taget.ID = Source.ID 替换它,它工作正常,所以我假设我必须以其他方式写一个名称为 space 的专栏。
对正确的语法有什么建议吗?
使用方括号用空格将值括起来:
Target.[Form Number] = Source.[Form Number]
有关详细信息,请参阅 documentation 中的 定界标识符 部分。