使用 exists 比 in要高一些
我觉得 not exist 和not in 差不多。exists是扫描发现有存在,则停止查询, in 好像是先建立了结果集,
而 not exist 和not in ,则是全部都查询了一遍

解决方案 »

  1.   

    查询的效率与索引有关系,但是有的文章说使用exists 比in效率要高,这我没测试过,如果楼主想看一下子查询的执行过程和次序,可以用explain 看看执行计划,就知道该执行先执行的是哪一句,用了哪些索引,用了多少资源等等,.
      

  2.   

    不应该记住这些教条  我到现在都记不住那中情况效率更高
    对与sql语句你应该看它的执行计划和消耗的资源的情况 即时同样的sql在不同的数据量下都不同
    用sqlplus下面的set autotrace on 这是分析sql语句的方法