令人困惑的语法错误(FROM 语句)
Confusing Syntax Error (FROM statement)
我正在尝试将 table 1 的日期列更新为未来的日期,也就是所谓的停用日期。我在 FROM 语句下遇到语法错误。除了
之外,我没有得到其他信息
INCORRECT SYNTAX NEAR 'FROM'.
UPDATE [database1].[dbo].[table1]
SET [database1].[dbo].[table1].[datecolumn1] = '9999-12-31 00:00:00.000'
WHERE [database1].[dbo].[table1].[END_DATE] > GETDATE()
FROM [database1].[dbo].[table1]
INNER JOIN [database2].[dbo].[table2] ON [database1].[dbo].[table1].[namecolumn1] = [database2].[dbo].[table2].[namecolumn2]
GO
你的 WHERE
子句应该在 FROM
:
之后
UPDATE [database1].[dbo].[table1]
SET [database1].[dbo].[table1].[datecolumn1] = '9999-12-31 00:00:00.000'
FROM [database1].[dbo].[table1]
INNER JOIN [database2].[dbo].[table2] ON [database1].[dbo].[table1].[namecolumn1]=[database2].[dbo].[table2].[namecolumn2]
WHERE [database1].[dbo].[table1].[END_DATE] > GETDATE()
GO
where
子句应该放在最后。此外,您在单词 "innner" 中有错字(应该是 "inner" - 或者更好,完全删除它):
UPDATE [database1].[dbo].[table1]
SET [database1].[dbo].[table1].[datecolumn1] = '9999-12-31 00:00:00.000'
FROM [database1].[dbo].[table1]
JOIN [database2].[dbo].[table2] ON
[database1].[dbo].[table1].[namecolumn1] =
[database2].[dbo].[table2].[namecolumn2]
WHERE [database1].[dbo].[table1].[END_DATE] > GETDATE()
我正在尝试将 table 1 的日期列更新为未来的日期,也就是所谓的停用日期。我在 FROM 语句下遇到语法错误。除了
之外,我没有得到其他信息INCORRECT SYNTAX NEAR 'FROM'.
UPDATE [database1].[dbo].[table1]
SET [database1].[dbo].[table1].[datecolumn1] = '9999-12-31 00:00:00.000'
WHERE [database1].[dbo].[table1].[END_DATE] > GETDATE()
FROM [database1].[dbo].[table1]
INNER JOIN [database2].[dbo].[table2] ON [database1].[dbo].[table1].[namecolumn1] = [database2].[dbo].[table2].[namecolumn2]
GO
你的 WHERE
子句应该在 FROM
:
UPDATE [database1].[dbo].[table1]
SET [database1].[dbo].[table1].[datecolumn1] = '9999-12-31 00:00:00.000'
FROM [database1].[dbo].[table1]
INNER JOIN [database2].[dbo].[table2] ON [database1].[dbo].[table1].[namecolumn1]=[database2].[dbo].[table2].[namecolumn2]
WHERE [database1].[dbo].[table1].[END_DATE] > GETDATE()
GO
where
子句应该放在最后。此外,您在单词 "innner" 中有错字(应该是 "inner" - 或者更好,完全删除它):
UPDATE [database1].[dbo].[table1]
SET [database1].[dbo].[table1].[datecolumn1] = '9999-12-31 00:00:00.000'
FROM [database1].[dbo].[table1]
JOIN [database2].[dbo].[table2] ON
[database1].[dbo].[table1].[namecolumn1] =
[database2].[dbo].[table2].[namecolumn2]
WHERE [database1].[dbo].[table1].[END_DATE] > GETDATE()