今天写了这样的代码 代码如下: DECLARE atr NVARCHAR(20) SET atr = NULL IF(atr = NULL) BEGIN PRINT 1 END 原本是想打印出1的。但是没有。 把 代码修改成如下: DECLARE atr NVARCHAR(20) SET atr = NULL IF(atr IS NULL) BEGIN PRINT 1 END 这样就正确打印出1了。 然后自己有做了如下的修改,把if
问:
从数据表中选择一个字段“field”,如果“field”值是1或NULL赋值为1,其它情况为0,该怎么写啊?这样写对不对啊?
(CASE field
WHEN '1' THEN '1'
WHEN NULL THEN '1'
ELSE '0' END
) AS field
满意回答:
不要使用when null来判断,等于NULL的时候判断不出来的
你可以当字段等于NULL时给一个默认值。比如
(CASE isnull(field,