【发布时间】:2015-02-18 19:46:35
【问题描述】:
我对这段代码有疑问,我很确定解决方案很简单,但我没有看到。
CASE @L0 WHEN '/' THEN NULL ELSE @L0 END
这是我用来从平面文件 (csv) 中导入数据的代码的一部分,其中 NULL 存储为 /。问题是@L0 也可以是由另一个程序填充的输入变量,并且它可能为 NULL。由于不允许在 CASE 中使用 NULL 值作为表达式,代码不起作用,我收到一条错误消息。
谁能告诉我正确的做法?
【问题讨论】:
-
那么如果
@L0是NULL,结果应该是什么? -
CASE ISNULL(@L0, '/') WHEN '/' THEN NULL END
标签: sql-server expression case coalesce nullif