SQL 中 NULL值測試代碼。本站提示廣大學習愛好者:(SQL 中 NULL值測試代碼)文章只能為提供參考,不一定能成為您想要的結果。以下是SQL 中 NULL值測試代碼正文
方才想從數據庫中的表EXPERT_DETAILS中檢索出修正人Modifier(類型 VARCHAR2(20),可為空)為空的那些記載,由於該字段的類型為VARCHAR2(20),我應用的SQL語句為
select * from expert_details twhere t.modifier = ''
沒有檢索出一筆記錄,而這與存儲在該表中的記載是不符合的。後來想到即使是空字符型存儲在數據庫中也應當是NULL而不是''。
然後我應用以下SQL 語句,依然沒有檢索出一筆記錄。
select * from expert_details t
where t.modifier = null
最初我想到了SQL中的NULL 值測試。應用以下語句,終究檢索出了想要的成果。
select * from expert_details t
where t.modifier is null
在SQL語句中,where 子句:where t.modifier = null ,這裡弗成以應用NULL症結字,由於它不是一個真實的值,它僅僅是一個符號,由於它的值是未知的。當t.modifier自己就是null時,即where子句為:where null= null ,當等號雙方的值都是未知的時刻,成果是TRUE照樣FALSE,SQL不克不及給出一個明白的成果,所以查詢出的成果也為NULL。
是以必需明白應用NULL值測試即 字段 IS NULL 或許其否認情勢 字段 IS NOT NULL 來檢測NULL值。