作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
这是我的代码:
DECLARE @TABLE TABLE
(
RecordID BIGINT,
RecordValue NVARCHAR(10)
)
INSERT INTO @TABLE(RecordID,RecordValue)
VALUES (1,'100')
,(2,NULL)
,(3,'200')
,(4,NULL)
,(5,'200')
SELECT RecordID,RecordValue
FROM @TABLE
WHERE RecordValue NOT IN ('200')
输出:
1 100
期望输出:
1 100
2 空
4 空
我怎样才能得到“NULL”值呢?
其实我的sql语句是由很多过程和函数生成的,我在做像使用ISNULL函数这样的操作时受限。最终声明格式如下:
WHERE RecordValue NOT IN ('CSV...')
WHERE RecordValue IN ('CSV...')
or combinatnation from both
RecordValue NOT IN ('CSV...') AND RecordValue IN ('CSV...')
有没有办法通过这种方式获取 NULL 值?
最佳答案
试试这个:
SELECT RecordID,RecordValue
FROM @TABLE
WHERE RecordValue NOT IN ('200') OR RecordValue IS NULL
当值为 NULL
时,与它的比较始终为 NULL
,因此您必须考虑到它。
关于tsql - T-SQL WHERE NOT IN 不捕获 NULL 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12369088/
我是一名优秀的程序员,十分优秀!