posts - 10, comments - 9, trackbacks - 0, articles - 17

          SQL中 不等于<>的null注意

          Posted on 2010-07-07 10:17 wesley1987 閱讀(7311) 評論(1)  編輯  收藏

          select COUNT(*) from table t WHERE t.col <> '3'


          SELECT COUNT(*) FROM table t WHERE t.col NOT IN
          (select t.col from table t WHERE t.col= '3')

          以上兩句SQL的執行結果不同, 因為 <> 在排除3的同時, 將null也排除了,
          所以當比較字段含null時,第一句將比第二句的結果少.

          當然第二句從效率上來說不是一個好的寫法, 這樣寫只是為了理解, 在第一句后面, 加上 or t.col is null 應該就等效了.

          Feedback

          # re: SQL中 不等于的null注意[未登錄]  回復  更多評論   

          2012-05-18 18:25 by 111
          直接 ISNULL(t.col,'')<>'3' 不更好么

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 洛阳市| 桂阳县| 土默特左旗| 龙川县| 宁海县| 元谋县| 商南县| 太仆寺旗| 靖江市| 东安县| 梅州市| 平原县| 万载县| 启东市| 庐江县| 桐乡市| 清流县| 大兴区| 孙吴县| 灵石县| 三原县| 封丘县| 射阳县| 临洮县| 珠海市| 承德市| 简阳市| 武乡县| 昆明市| 伊金霍洛旗| 泗洪县| 滨州市| 涞水县| 三明市| 河池市| 南川市| 镇巴县| 格尔木市| 内丘县| 西丰县| 东丰县|