SQL - 澄清 - ISNULL()

时间:2015-04-28 14:02:48

标签: sql sql-server

我在存储过程中有以下逻辑。

这里有什么成就?

如果颜色为空,请替换为''

IF ISNULL(@color, '') <> '' 
BEGIN
END

2 个答案:

答案 0 :(得分:4)

与:

相同
IF (@color IS NOT NULL AND @color <> '') 
   THEN ...

还有一件事,尝试使用COALESCE函数而不是ISNULL,因为首先是SQL Standard提出的。语法非常相似:

IF COALESCE(@color, '') <> '' 
BEGIN
    ...
END

答案 1 :(得分:2)

@color is NULL替换为''时。

因此当@color有值(NOT NULL OR'')时,BEGIN .. END将被执行。