MySql中IS NOT NULL與!=NULL的區(qū)別
作者: 鄭曉 分類: 編程基礎(chǔ) 發(fā)布于: 2012-08-18 20:17 瀏覽:16,948 評論(1)
在mysql中,篩選非空的時(shí)候經(jīng)常會(huì)用到is not null和!=null,這兩種方法單從字面上來看感覺是差不多的,其實(shí)如果去運(yùn)行一下試試的話差別會(huì)很大!
為什么會(huì)出現(xiàn)這種情況呢?
null 表示什么也不是, 不能=、>、< ... 所有的判斷,結(jié)果都是false,所有只能用 is null進(jìn)行判斷。默認(rèn)情況下,推薦使用 IS NOT NULL去判斷,因?yàn)镾QL默認(rèn)情況下對!= Null的判斷會(huì)永遠(yuǎn)返回0行,但沒有語法錯(cuò)誤。如果你一定想要使用!= Null來判斷,需要加上這個(gè)語句:set ANSI_NULLS off這時(shí)你會(huì)發(fā)現(xiàn)IS NOT NULL 和 != null 是等效的。
? ? ? ?
本文采用知識共享署名-非商業(yè)性使用 3.0 中國大陸許可協(xié)議進(jìn)行許可,轉(zhuǎn)載時(shí)請注明出處及相應(yīng)鏈接。
本文永久鏈接: http://www.yjfs.org.cn/is-not-null-mysql-and-the-difference-null.html
挺不錯(cuò)的,看了之后非常有用啊