SQL空条件
我对发展一无所知。在sql中,我编写了一个存储过程和 它工作正常,但我只是想确保它是以正确的方式完成的 在这里,我使用sp中的IF语句检查表中的日期列是否为NULL:SQL空条件,sql,Sql,我对发展一无所知。在sql中,我编写了一个存储过程和 它工作正常,但我只是想确保它是以正确的方式完成的 在这里,我使用sp中的IF语句检查表中的日期列是否为NULL: if ((select sdate from tbla where id='3') = Null) begin some query end 这是否适用于所有情况,还是我也需要检查“”(空)?在SQL中,null不等于任何值,包括其他null。您需要使用is null而不是=操作。Em
if ((select sdate
from tbla
where id='3') = Null)
begin
some query
end
这是否适用于所有情况,还是我也需要检查“”(空)?在SQL中,null不等于任何值,包括其他null。您需要使用
is null
而不是=
操作。Empty和null不是一回事,因此需要分别检查空字符串。您还应该使用is null
而不是=null
来检查列是否为null。如果您希望在某个值为null时显示其他表达式,则可以使用Coalesce
选择CASE When(null=null)然后选择1 Else 0 END
结果:0
选择CASE When(null为null)然后选择1 Else 0 END
结果:1
选择null+“soemthing”
结果:空
选择合并(null,'DefaultValueIfNull')
结果:DefaultValueIfNull
仅当lastname不为null时才追加空格和姓氏:
select FirstName+coalesce(''+LastName','')From People
仅当lastname不为null时才追加空格和lastname,并处理空lastname:
select FirstName+coalesce(“”+CASE LastName When“”,然后null Else LastName END“”)取决于您的数据库-一些数据库将“empty”和null视为等效项-其他数据库则不如此。所以,为了对您的情况得到一个合理的答案,我们需要知道您正在使用的数据库系统及其版本。“SQL”只是结构化查询语言,它不是一个数据库系统……可能是