我试着去比较两个值-1是空等是数字,但它在某种程度上等于“平等”数字空值VS值 - 比较
declare @value1 int;
declare @value2 int;
select @value1 = null
select @value2 = 1
if (@value1 <> @value2)
print 'not equal'
else
print 'equal'
结果:平等
我试着去比较两个值-1是空等是数字,但它在某种程度上等于“平等”数字空值VS值 - 比较
declare @value1 int;
declare @value2 int;
select @value1 = null
select @value2 = 1
if (@value1 <> @value2)
print 'not equal'
else
print 'equal'
结果:平等
你不能比较NULL
值,也没有用=
也不<>
因为NULL
表示不确定。
使用IS
如果你想知道,如果一个值为NULL
,你可以使用:
IF ((@value1 IS NULL
AND @value2 IS NULL)
OR ((@value1 IS NOT NULL
AND @value2 IS NOT NULL
AND @value1 = @value2)))
PRINT 'equal'
ELSE
PRINT 'not equal'