在sql server中检查null,空变量

时间:2011-10-20 17:27:31

标签: sql-server

我总是这样做,以涵盖@variable可以为空或空的所有情况,

 IF(COALESCE(@variable,'') <> '')
    BEGIN


    END 

这是检查此问题的最佳方法吗?

2 个答案:

答案 0 :(得分:4)

如果它是一个变量,那么它应该没关系。如果您在表的列上执行类似的过滤器,那么我建议: WHERE Column IS NOT NULL OR Column <> ''因为它保留了对该列的可能索引的使用。

答案 1 :(得分:1)

假设@variable是VARCHAR / NVARCHAR,那么以下内容应该做同样的工作:

IF @variable > ''
    BEGIN
    ...    
    END