Sql 使用表Y中的值填充表X中的列
另一位开发人员更改了表map的userid列中的所有值。我需要将它们更改回来,因为userid也是profiles表中的一个键。谢天谢地,出于不值得深入探讨的原因,map和profiles共享另一个共同的专栏,employeeId 因此,我想将userid的所有值都作为在profiles中找到的值,并覆盖在匹配的map行中的userid中找到的值 我的本能是这样做:Sql 使用表Y中的值填充表X中的列,sql,sql-server,sql-update,Sql,Sql Server,Sql Update,另一位开发人员更改了表map的userid列中的所有值。我需要将它们更改回来,因为userid也是profiles表中的一个键。谢天谢地,出于不值得深入探讨的原因,map和profiles共享另一个共同的专栏,employeeId 因此,我想将userid的所有值都作为在profiles中找到的值,并覆盖在匹配的map行中的userid中找到的值 我的本能是这样做: UPDATE map,profiles SET map.userid = profiles.userid WHERE map.em
UPDATE map,profiles
SET map.userid = profiles.userid
WHERE map.employeeId = profiles.employeeId
但是SQLServer2005不希望在UPDATE子句中有两个表
有什么建议吗?在T-SQL语法中,更新部分包含要更新的内容,而FROM可能包含其他数据源 试试下面的方法
UPDATE map
SET map.userid = profiles.userid
FROM profiles
WHERE map.employeeId = profiles.employeeId
更新语法:在T-SQL语法中,更新部分包含要更新的内容,而FROM可能包含其他数据源 试试下面的方法
UPDATE map
SET map.userid = profiles.userid
FROM profiles
WHERE map.employeeId = profiles.employeeId
更新语法:您可以在更新中使用FROM子句:
UPDATE m
SET m.userid = profiles.userid
from map m
inner join profiles on m.employeeId = profiles.employeeId
您可以在更新中使用FROM子句:
UPDATE m
SET m.userid = profiles.userid
from map m
inner join profiles on m.employeeId = profiles.employeeId
这个别名的形式更清晰,伊姆霍。它更明确地将更新与来自的链接起来。它更明确地将更新与来自的链接。