Ответ 1
Вы используете неправильный стиль CASE
- вам нужно использовать CASE WHEN <expression> THEN
not CASE <expression> WHEN <expression> then
:
SELECT CASE
WHEN dbo.fnCarerResponse('') IS NULL
THEN 'Pass'
ELSE 'Fail'
END
Как вы проверяете NULL
в инструкции CASE
, когда используете Scalar Function
?
Мой первоначальный запрос был... но он терпит неудачу
SELECT CASE dbo.fnCarerResponse('')
WHEN NULL THEN 'Pass'
ELSE 'Fail'
END
Я прочитал вопрос qaru.site/info/325124/... об использовании IS NULL
, например...
SELECT CASE dbo.fnCarerResponse('') IS NULL
WHEN NULL THEN 'Pass'
ELSE 'Fail'
END
но это дает ошибку incorrect syntax near the keyword is
У вас есть Scalar Function
в CASE
?
Вы используете неправильный стиль CASE
- вам нужно использовать CASE WHEN <expression> THEN
not CASE <expression> WHEN <expression> then
:
SELECT CASE
WHEN dbo.fnCarerResponse('') IS NULL
THEN 'Pass'
ELSE 'Fail'
END
SELECT CASE
WHEN dbo.fnCarerResponse('') IS NULL
THEN 'Pass'
ELSE 'Fail'
END
SELECT CASE
WHEN dbo.fnCarerResponse('') is NULL THEN 'Pass'
ELSE 'Fail'
END