SQL 中 NULL值測(cè)試代碼
發(fā)布日期:2022-01-26 19:19 | 文章來(lái)源:源碼中國(guó)
復(fù)制代碼 代碼如下:
select * from expert_details twhere t.modifier = ''
沒(méi)有檢索出一條記錄,而這與存儲(chǔ)在該表中的記錄是不相符的。后來(lái)想到即便是空字符型存儲(chǔ)在數(shù)據(jù)庫(kù)中也應(yīng)該是NULL而不是''。 然后我使用下列SQL 語(yǔ)句,仍然沒(méi)有檢索出一條記錄。
復(fù)制代碼 代碼如下:
select * from expert_details t
where t.modifier = null
最后我想到了SQL中的NULL 值測(cè)試。使用如下語(yǔ)句,終于檢索出了想要的結(jié)果。
復(fù)制代碼 代碼如下:
select * from expert_details t
where t.modifier is null
在SQL語(yǔ)句中,where 子句:where t.modifier = null ,這里不可以使用NULL關(guān)鍵字,因?yàn)樗皇且粋€(gè)真正的值,它僅僅是一個(gè)符號(hào),因?yàn)樗闹凳俏粗?。?dāng)t.modifier本身就是null時(shí),即where子句為:where null= null ,當(dāng)?shù)忍?hào)兩邊的值都是未知的時(shí)候,結(jié)果是TRUE還是FALSE,SQL不能給出一個(gè)明確的結(jié)果,所以查詢出的結(jié)果也為NULL。 因此必須明確使用NULL值測(cè)試即 字段 IS NULL 或者其否定形式 字段 IS NOT NULL 來(lái)檢測(cè)NULL值。
版權(quán)聲明:本站文章來(lái)源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請(qǐng)保持原文完整并注明來(lái)源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來(lái)源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來(lái),僅供學(xué)習(xí)參考,不代表本站立場(chǎng),如有內(nèi)容涉嫌侵權(quán),請(qǐng)聯(lián)系alex-e#qq.com處理。
相關(guān)文章