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

          SQL中 不等于<>的null注意

          Posted on 2010-07-07 10:17 wesley1987 閱讀(7312) 評論(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' 不更好么

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


          網站導航:
           
          主站蜘蛛池模板: 大足县| 库伦旗| 新乡县| 嘉定区| 蛟河市| 德保县| 洛隆县| 永定县| 泸水县| 五家渠市| 阿荣旗| 平定县| 德州市| 浙江省| 武平县| 中阳县| 通河县| 沈阳市| 鸡泽县| 晴隆县| 贺州市| 德化县| 观塘区| 来凤县| 鸡西市| 巴青县| 句容市| 海丰县| 巴里| 阳江市| 深泽县| 大邑县| 景宁| 金山区| 陆川县| 嘉峪关市| 余干县| 旺苍县| 灵山县| 江津市| 武胜县|