Я хочу проверить, отличается ли @a от @b в "ansi_nulls off":
set ansi_nulls off
declare @a int = 1;
declare @b int = null;
select case when @a<>@b then 'diff' else 'equal' end '@a=@b ?' --RETURNS 'diff'
но без использования «set ansi_nulls off». Я придумал следующее, но оно довольно многословно:
select
case
when @a is null and @b is not null then 'diff' -- null x
when @a is not null and @b is null then 'diff' -- x null
when @a is null and @b is null then 'equal' -- null null
when @a <> @b then 'diff' -- x x
else 'equal'
end
Есть ли более короткий способ сделать это?
Спасибо,
Нестор