У меня есть SQL ниже, и я хочу обновить managerNTID
с @managerNTID
только в том случае, если запись БД пользователя имеет значение StopManagerOverride
0, если для записи установлено значение 1, тогда я не хочуобновить это поле:
UPDATE ee
SET
MangerId = CASE ee.ShopManagerOverride
WHEN 0 THEN @MangerId
ELSE ee.MangerId
END
,ManagerNTID = CASE ee.ShopManagerOverride
WHEN 0 THEN @managerNTID
ELSE ee.ManagerNTID
END
,NTID = @NTID
,FirstName = @FirstName
,LastName = @LastName
,FullName = @FullName
,ReportingGroup = @ReportingGroup
,DistinguishedName = @DistinguishedName
,IsActive = 1
--,StopManagerOverride= 1
,LastUpdate = GETDATE()
,UpdateBy = @UpdateBy
FROM dbo.Employees ee
Inner Join dbo.Employees e ON e.NTID = ee.NTID
WHERE ee.NTID = @NTID
Мысли о том, как сделать это одно поле в обновлении встроенным условием?
edit: я почти на месте, просто нужно разрешить некоторые неоднозначные столбцы,мои глаза уже красные от этого.