Oracle中not exists 与not in 的使用情况

1、在oracle11g以上版本,oracle已经做了优化,能够自动将in优化成exists方式,因此oracle11g以上版本,使用in和exists效果是一样的。

2、在oracle中,使用not exists 和not in的查询结果不一定完全等同的。

  •       not in 方式:当内表数据中含有null时 not in 查询将返回null。当外表中含有空值记录,not in 查询最终将过滤该条记录。
  •       not exists方式:将返回不在内表中但是在外表中的记录。当外表含有空值记录,not exists查询最终仍然输出该条记录。

 

posted @ 2014-06-23 17:18  wala-wo  阅读(237)  评论(0编辑  收藏  举报