一定是3,因为exists判断只要存在一条记录即返回,不用继续比较下去。但是对于2来说,如果history_barcode_info非常的大的话,那就慢慢的等把,它会把所有的字段都去匹配一次。

解决方案 »

  1.   

    刚才仔细研究了一下楼主的题目,
    发现这三个查询根本不具可比性,条件不一样。第一条查询返回的结果是表history_barcode_info中CHECH_FLAG = 'S'的记录数,
    结果是一个统计数字。第二条查询返回的结果是一个记录集,共有n条'X',n为CHECH_FLAG = 'S'的记录数目,
    结果是一个记录集。第三条查询是一个判定,如果在history_barcode_info中存在CHECH_FLAG = 'S'的记录,
    则结果返回一个‘X’,如果不存在,则结果为NULL
      

  2.   

    回復njhart2003:
    從數據庫執行的角度來說,當然條件不一樣;但從應用程式中的實現來看,效果是一樣的,我已經說明了對比的視角是應用程式。從效率來說,我自己目前的看法是:3>=2>1向高手求證!
      

  3.   

    嗯,
    heyixiang(子豚の愛人)分析的对!