这是我在Microsoft sql Server中发现的一个奇怪的行为.如果我错了请纠正我
SELECT COUNT(*) FROM TABLEA WHERE [Column1] IS NULL;
这返回30018行.
CREATE VIEW VIEWB AS SELECT * FROM TABLEA AS t1 WHERE t1.[Column1] NOT IN ('Cross/Up sell','Renegotiation','Renewal')
如果我查看VIEWB,我在Column1中找不到NULL:
SELECT COUNT(*) FROM VIEWB WHERE [Column1] IS NULL;
这返回0行.
为什么?上面的查询排除了3个值,但不应该排除NULL.为什么Ms sql Server的行为是这样的?我应该预期吗
我该怎么解决?