我总是这样做,以涵盖@variable
可以为空或空的所有情况,
IF(COALESCE(@variable,'') <> '')
BEGIN
END
这是检查此问题的最佳方法吗?
答案 0 :(得分:4)
如果它是一个变量,那么它应该没关系。如果您在表的列上执行类似的过滤器,那么我建议:
WHERE Column IS NOT NULL OR Column <> ''
因为它保留了对该列的可能索引的使用。
答案 1 :(得分:1)
假设@variable是VARCHAR / NVARCHAR,那么以下内容应该做同样的工作:
IF @variable > ''
BEGIN
...
END