我想從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',您將只能找到一條記錄。 –