Вложенная логика в формуле постоянных столбцов
Я новичок и имею проблемы с синтаксисом формул в постоянных столбцах.
A - Мне нужен случай, когда (CustomerAccountID IS NULL и MissCustNameMatched=0) ИЛИ errLicensingProgMissing=1 ИЛИ errLicensingSubMissing=1 then (1) else (0) end
Это не будет подтверждено правильно.
Б - Или я могу сделать это как-то так *
дело
- когда [MissCustName] истинно
- когда [CustomerAccountName] равно NULL, тогда
- (1)
- еще
- (0)
- конец
- еще
- (0)
- конец*
1 ответ
Решение
Ваши два случая не совпадают с именами столбцов, но после объявления сохраненного поля показано, как это можно сделать с помощью CASE
заявление.
CREATE TABLE dbo.Test (
CustomerAccountID INTEGER
, MissCustNameMatched INTEGER
, errLicensingProgMissing INTEGER
, errLicensingSubMissing INTEGER
, persistedField AS
CASE MissCustNameMatched WHEN 1
THEN
CASE CustomerAccountID WHEN 1
THEN 1
ELSE 0
END
ELSE 0
END PERSISTED
)