热线电话:13121318867

登录
2021-01-26 阅读量: 3868
Sql 中in语句在条件中有null时的处理

image.pngimage.png

如图,为什么在条件中增加一个null后搜索不出来结果,按照字面意思理解,不应该是如果不是空值的话就取出吗


55.2054
1
关注作者
收藏
评论(1)

发表评论
hunter.Z
2021-01-26

答:in 判断时,每条记录与集合里的每一个记录比较,只要有一条记录比较相同,就返回true。所以,即使这个集合里有null,也不影响in的结果。

但not in就不一样了,not in要与集合中每条记录比较,每条记录都不相同才返回true。当集合中包含null时,每条记录与之比较都会不成立,所以返回的集合也必定为null

因此,not in 判断的集合不能包含null,而in判断的集合可以包括null。

ps:判断是否为null要用is关键字。


55.2054 2 0 回复
推荐帖子
条评论