數(shù)據(jù)庫常見問題及解決辦法 空字符串與NULL值的區(qū)別?
空字符串與NULL值的區(qū)別?空描述:1,相當(dāng)于沒有值,未知。2. Null與0、空字符串和空格不同。Null不分配存儲空間。3. 對空值加、減、乘、除,結(jié)果仍為空。4. Null是使用NVL函數(shù)處理的
空字符串與NULL值的區(qū)別?
空描述:
1,相當(dāng)于沒有值,未知。
2. Null與0、空字符串和空格不同。Null不分配存儲空間。
3. 對空值加、減、乘、除,結(jié)果仍為空。
4. Null是使用NVL函數(shù)處理的。
5. 關(guān)鍵字為“is null”和“is not null”。
6. 無法索引空值,因此在查詢過程中可能找不到某些限定數(shù)據(jù)。在count(*)中,使用NVL(列名,0)進(jìn)行處理,然后進(jìn)行查詢。
7. 排序時,它比其他數(shù)據(jù)大(索引默認(rèn)按降序排序,小→大),所以空值總是排在最后??梢院唵蔚乩斫猓兆址啊睘閚ull,例如:[SQL> select 1 from dual where null=”“”no record found]因為“”為null,所以select 1 from dual where null=”“”語句被解析為select 1 from dual where null=null,當(dāng)然沒有記錄。其他的都是一樣的,所以從dual中選擇1的結(jié)果,其中“”為null自然是一條記錄
~]“”只能判斷空字符串,isnull是對null字符的判斷,兩種數(shù)據(jù)完全不同。一個是空字符,一個字符串,但沒有值,另一個是空值。
Null是數(shù)據(jù)庫中的一種特殊數(shù)據(jù)。
=“”和“”
isnull和isnotnull