1
我有一个更新查询来更新表中的记录,当我做了更新的条件选择,它显示715条记录匹配的条件,但是当我运行更新查询,只有15个更新。谁能帮我这个。我已经将Excel表格中的数据加载到临时表中进行比较。更新查询不更新所有记录
BEGIN TRAN
UPDATE table1
SET English = CASE
WHEN English <> t.name THEN t.name
else English
END
FROM #tempdata t
LEFT JOIN dbo.Main m
ON m.Code= t.[property]
LEFT JOIN table1 tbv
ON m.filterkey= tbv.filterkey
where t.name != tbv.English
ROLLBACK TRAN
你选择什么样子?您的选择结果中的'filterkey'是否是唯一的? 'table1'上它是唯一的吗? –
你为什么要''加入'到你将要更新的表格? – DVT
你的'CASE'是多余的。英文<> t.name'的ELSE意味着'英文= t.name',所以在所有的情况下**你都返回't.name'。 (请注意,如果涉及任何'NULL'值,则不会出现这种情况;但是,您的'WHERE'子句不包括这些提示。) –