以下のステートメントを実行していますが、同じ結合で1 行を返すupdate
のに 0 行に影響する理由を理解できません。それらは両方ともタイプであり、crmnumberAC の方が大きいため、AccountNumber から文字列を取得できるはずです。考え?select
where
Varchar
begin transaction
update c
set c.crmnumberAC = a.AccountNumber
--select a.name, a.AccountNumber, c.fullname, c.crmnumberAC
from Contact as c
right join Account as a
on c.PFH_Mapping_Ac_ContacId = a.AccountId
WHERE (a.AccountNumber IS NOT NULL AND c.crmnumberAC IS NULL)
OR a.AccountNumber != c.crmnumberAC
rollback transaction
これは、 のコメントを外して;select
まで実行したときの結果セットです。where