对于结果集包含NULL的情况:
1,当用IN时,若在结果集中存在,则返回TRUE,若在结果集中不存在,因结果集中有NULL,则返回UNKNOWN, UNKNOWN类似于False,故用IN可返回TRUE或False,同用Exists一样。
2,用IN时,返回TRUE或UNKNOWN,那么用NOT IN时,就返回NOT TRUE 或NOT UNKNOWN 即:False或NOT UNKNOWN,因NOT UNKNOWN = UNKNOWN,类似于False,故对于结果集包含NULL时,会一直返回False!即一直没有结果。
故:当当用NOT IN时,若不能保证结果集一定没有NULL,则最好用NOT EXISTS
【版权声明】
本站部分内容来源于互联网,本站不拥有所有权,不承担相关法律责任。如果发现本站有侵权的内容,欢迎发送邮件至masing@13sy.com 举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。
上一篇: SELECT TOP的用法
下一篇: 查询表空间及行数