Oracle 判断字符串为''还是Null

2015-02-02 17:13:45 · 作者: · 浏览: 24

结果却打印了BBBBBBBBBBBBBBBBBBBBBBBB




IF ('' IS NULL) THEN
? dbms_output.put_line(''''' is null');
? END IF;
输出:'' is null

这说明,在oracle pl/sql里,把''当成null处理了




Oracle中的空应该用的是null,非空就是not null
for example:





select? ?

st.koyu_zaisan_no
,st.koyu_zaisan_edaban
,st.shutoku_nendo? --?異動年度
,st.shutokubi????????? --?異動日
,st.kaikei
,'会計名'???????????????? --?
,st.shukanka????????? --?
,'KANJYO_KAMOKU_MEISHO'? --?
,'金額'
,'err_no'???????????????? --?
,'err_naiyo'??????????? --?
,'0' csv_type????????? --?

from SHISAN_TAB st
where? trim(nvl(st.chiku_cd,'')) || 'A' ='A'
or? trim(nvl(st.chimoku,'')) || 'B' ='B'