select语句 的 IN 与NOT IN 的问题
select 的 IN 与NOT IN 的问题
如:1、select count(*) from table where name not in ( 'li ', 'b ', 'c ', 'd ')
2、select count(*) from table where name in ( 'li ', 'b ', 'c ', 'd ')
这两句的结果的和不是应该=select count(*) from table 吗?
还是有什么没有考虑到的?
------解决方案--------------------in
not in
都不包括空值
------解决方案--------------------还有NULL的情况,剩下的应该都是NULL了..
------解决方案--------------------我的建议是select name from table where name not in ( 'li ', 'b ', 'c ', 'd ')
然后 select name from table where name in ( 'li ', 'b ', 'c ', 'd ')
在然后是select name from table。这样我想就知道是什么原因了。