我想从another table
更新one table
列值。我有两个表,即Users, UserProfile
我在这两个表中有MobileNumber
列。所以我想从UserProfile
更新Users
表手机号码。 UserProfile
表中可能有重复的移动号码。所以我想避免Users
表中的重复值。如果已经存在MobileNumber
则不需要更新。用另一个表值更新一个表列值的SQL Server查询
这里是我的query
update Users
set MobileNumber = up.MobileNumber
from Users u
left join UserProfile up on u.UserID = up.UserID
where up.MobileNumber not in (select ISNULL(MobileNumber, '') from Users);
但它不能正常工作。在UserProfile
表中有一些记录,其中包含Null
值MobileNumber
。我如何更新此列而不重复?
您所查询的完美。你面临的问题在哪里。@ Ajay –
请澄清。用户中每个用户有1条记录,UserProfile中每个用户有多条记录? –
@ P.Salmon对不起。在userprofile表中,mobilenumber对于多个用户可能是相同的。在UserProfile中,对于单个用户只有一条记录,例如'User.UserId = UserProfile.UserId',您将只能找到一条记录。 –