Oracle中對(duì)空字符串的判斷方式
Oracle中對(duì)空字符串的判斷
oracle中常見的一個(gè)小錯(cuò)誤就是字符串判斷是否為空。
習(xí)慣了編程的人喜歡用<> !=,但這樣都是錯(cuò)誤的,應(yīng)該使用is null 或者 is not null, 或者使用nvl函數(shù)
首先理解,在oracle中,默認(rèn)將空字符視為null,而對(duì)null進(jìn)行判斷都為false
例如
‘1’ != null 我們看上去這是對(duì)的,但是和null的比較都為fasle,所以結(jié)果是false
舉個(gè)例子:


select ( case when 'sdfds' is not null then 1 else 2 end ) result from dual;

select ( case when 'sdfds' !=null then 1 else 2 end ) result from dual;

或者使用nvl函數(shù),nvl(字符串,為空時(shí)的默認(rèn)值)

Oracle 字符串不存在空串
Oracle版本 Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
測(cè)試內(nèi)容
搜索當(dāng)字符串為空時(shí)oracle數(shù)據(jù)庫(kù)字段 字符串不會(huì)出現(xiàn)空串"" 的情況,當(dāng)設(shè)置字符為"" 時(shí),oracle會(huì)默認(rèn)把它設(shè)置為null。
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Oracle中使用DBMS_XPLAN處理執(zhí)行計(jì)劃詳解
這篇文章主要介紹了Oracle中使用DBMS_XPLAN處理執(zhí)行計(jì)劃詳解,文中包含大量實(shí)例,以及set autotrace命令對(duì)應(yīng)實(shí)現(xiàn)等內(nèi)容,需要的朋友可以參考下2014-07-07
Linux系統(tǒng)下啟動(dòng)/關(guān)閉Oracle數(shù)據(jù)庫(kù)
在Linux系統(tǒng)上開啟關(guān)閉Oracle數(shù)據(jù)庫(kù)是一個(gè)常見的任務(wù),可以通過(guò)多種方法來(lái)實(shí)現(xiàn),這篇文章主要給大家介紹了關(guān)于Linux系統(tǒng)下啟動(dòng)/關(guān)閉Oracle數(shù)據(jù)庫(kù)的相關(guān)資料,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下2024-07-07
查看oracle數(shù)據(jù)庫(kù)的編碼及修改編碼格式的方法
本節(jié)主要介紹了如何查看oracle數(shù)據(jù)庫(kù)的編碼及修改編碼格式,需要的朋友可以參考下2014-07-07
Oracle中執(zhí)行動(dòng)態(tài)SQL
這篇文章介紹了Oracle中執(zhí)行動(dòng)態(tài)SQL的方法,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-05-05
安裝Oracle加載數(shù)據(jù)庫(kù)錯(cuò)誤areasQueries的解決
安裝Oracle加載數(shù)據(jù)庫(kù)錯(cuò)誤areasQueries的解決...2007-03-03
SQL案例學(xué)習(xí)之字符串的合并與拆分方法總結(jié)
這篇文章主要給大家介紹了關(guān)于SQL案例學(xué)習(xí)之字符串的合并與拆分的相關(guān)資料,文中分別介紹了兩種方法,對(duì)大家學(xué)習(xí)或者使用oracle具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2022-08-08
plsql配置tnsnames.ora的實(shí)現(xiàn)方法
這篇文章主要介紹了plsql配置tnsnames.ora的實(shí)現(xiàn)方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-09-09

