午夜视频在线网站,日韩视频精品在线,中文字幕精品一区二区三区在线,在线播放精品,1024你懂我懂的旧版人,欧美日韩一级黄色片,一区二区三区在线观看视频

分享

4.3.4 空值(NULL)的判斷——IS [NOT] NULL

 Fredanf 2013-06-04

4.3.4 空值(NULL)的判斷——IS [NOT] NULL

2008-06-04 16:14 馬軍/李玉林等編著 電子工業(yè)出版社 我要評(píng)論(0) 字號(hào):T | T
一鍵收藏,隨時(shí)查看,分享好友!

《SQL語言與數(shù)據(jù)庫操作技術(shù)大全:基于SQL Server實(shí)現(xiàn)》第4章主要講的是基本的查詢,所謂查詢就是讓數(shù)據(jù)庫服務(wù)器根據(jù)客戶端的要求搜尋出用戶所需要的信息資料,并按用戶規(guī)定的格式進(jìn)行整理后返回給客戶端。本節(jié)為您介紹空值(NULL)的判斷——IS [NOT] NULL。

AD: 2013大數(shù)據(jù)全球技術(shù)峰會(huì)課程PPT下載

4.3.4  空值(NULL)的判斷——IS [NOT] NULL

通過前面的學(xué)習(xí)可知,除非在創(chuàng)建時(shí)指定了NOT NULL約束,數(shù)據(jù)庫表中某些列的值可以為NULL。什么是NULL?顧名思義,NULL就是空,在數(shù)據(jù)庫中,含有空值的表的列的長度為零。

具體來講,NULL與0、空字符串、空格都不同,等價(jià)于沒有任何值,是未知數(shù)。然而,NULL卻是一個(gè)數(shù)據(jù)值,而且它屬于一個(gè)域。例如一個(gè)字符串字段,其中的NULL只能是一個(gè)字符串。盡管它的內(nèi)容沒有定義,或者未知,但它是字符串,這一點(diǎn)無可置疑。

對(duì)于NULL,一般的運(yùn)算,比如加、減、乘、除,都會(huì)返回NULL。永遠(yuǎn)不會(huì)有什么數(shù)據(jù)等于NULL。當(dāng)然,1不等于NULL,2也一樣。注意,NULL也不等于NULL,說一個(gè)NULL等于NULL是錯(cuò)誤的。

在SQL中,表達(dá)式“X=NULL”,結(jié)果應(yīng)當(dāng)是UNKOWN。而表達(dá)式“X IS NULL”,就得看情況,如果X是NULL,就返回TRUE;X不為NULL,則返回FALSE。

因此,在WHERE子句中,判斷一個(gè)值是否為NULL,只能采用IS [NOT] NULL判別式。下面通過具體實(shí)例說明IS [NOT] NULL判別式的用法。

實(shí)例19  使用IS [NOT] NULL判別式處理NULL值

本實(shí)例將實(shí)現(xiàn)實(shí)例17提出的查詢功能,即在BookInfo表中,查詢圖書讀者的讀者編號(hào)不大于9704(包括沒有讀者,為NULL)的所有圖書記錄,代碼如下:

 USE Library
SELECT *
FROM BookInfo
WHERE NOT reader>9704
OR reader IS NULL
運(yùn)行該代碼,得到的查詢結(jié)果如圖4.20所示。
 
圖4.20  查詢結(jié)果

可見,相比實(shí)例17,此時(shí)才得到了正確的結(jié)果。

★ 說明 ★

SAL IS NULL不可以寫成SAL=NULL;除了IS [NOT] NULL之外,空值不滿足任何查找條件;如果NULL參與算術(shù)運(yùn)算,則該算術(shù)表達(dá)式的值為NULL;如果NULL參與比較運(yùn)算,則結(jié)果為UNKNOWN;如果NULL參與聚集運(yùn)算,則除count(*)之外其他聚集函數(shù)都忽略NULL。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多