我们如何检查SQL ServerWHERE
条件中的列是否不为null而不是空字符串(''
)?
如果只想将“”匹配为空字符串
WHERE DATALENGTH(COLUMN) > 0
如果要将所有完全由空格组成的字符串计为空
WHERE COLUMN <> ''
NULL
当在WHERE
子句中使用时,这两个都不会返回值。至于NULL
将评估UNKNOWN
这些而不是TRUE
。
CREATE TABLE T
(
C VARCHAR(10)
);
INSERT INTO T
VALUES ('A'),
(''),
(' '),
(NULL);
SELECT *
FROM T
WHERE C <> ''
仅返回单行A
。即NULL
此查询排除具有或为空字符串或完全由空格组成的字符串的行。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句