SQL結構化查詢語言 單行函式 null值處理函式

2022-11-11 06:06:04 字數 2255 閱讀 8451

null值處理函式

null值

是乙個很特別的值,既不是0也不是空格.它的值是沒有定義,不確定的未知值

比如乙個案件的追蹤表,**在對犯罪分子一無所知,但在犯罪分子性別一欄不是男就是女,只是此時還不確定

就可以把性別欄設定為未知,當案件偵破到一定程度,**知道了犯罪分子的性別,既從未知變成了已知.也就是由null變成男或女

idle> select ename,job,sal,comm from emp where ename in ('smith','ward');enamejobsal commsmithclerk800wardsalesman1250 500idle>

如上查詢結果中comm列,一般職員沒有獎金,而銷售時有獎金的.這時統計銷售人員的薪金就需要加上獎金

idle> select ename,job,sal,comm,sal+comm from emp where ename in ('smith','ward');enamejobsal comm sal+commsmithclerk800wardsalesman1250 5001750idle>

結果顯示sal + comm為null的值還為null

我們再去列印comm為null值的員工工資

idle> select ename,sal from emp where comm = null;no rows selected

idle>

結果卻是沒有選中

可見,null值為未知不可以參與運算和比較正確的寫法如下:

idle> select ename,sal,comm from emp where comm is null;enamesalrows >

idle> select ename,sal,comm from emp where comm is not null;enamesalallen1600ward1250martin1250turner1500idle>

如果要做運算可以用nvl nvl2 nvlif函式先置為0nvl(表示式1,表示式2)

如果表示式1是null,則返回表示式2

comm30050014000comm

1/2如果表示式1非null,則返回表示式1

表示式1和表示式2可以是數字,字串,日期格式,1和2的資料型別必須一致

idle> select ename,job,sal,comm,sal+nvl(comm,0) from emp where ename in ('smith','ward');enamejobsal comm sal+nvl(comm,0smithclerk800800wardsalesman1250 5001750idle>

nvl2(expr1,expr2,expr3)

如果expr1為空,則返回expr3,否則返回expr2

idle> select ename,job,sal,comm,sal+nvl2(comm,comm,0) from emp where ename in ('smith','ward');enamejobsal comm sal+nvl2(comm,comm,0smithclerk800800wardsalesman1250 5001750idle>

nullif(expr1,expr2)

如果expr1和expr2相同,則返回空,否則返回expr1

idle> select ename,nullif(ename,'king') from emp where ename in ('scott','king');enamenullif(enascottscottkingidle>

空值的排序公升序會排在最後降序排在最前

idle> select ename,sal,comm from emp where ename in ('king','ward') order by comm;enamesalward1250king5000

comm500

idle> select ename,sal,comm from emp where ename in ('king','ward') order by comm desc;enamesalking5000ward1250idle>

coalesce(expr1,expr2,expr3,...)

返回第乙個非空的表示式

sql> select coalesce('','a','','b') from dual;c-a

sql> select coalesceb') from dual;c-bsql>

comm5002/2

2019事業單位面試技巧結構化面試語言素材四

更多資訊關注遼寧事業單位考試網 結構化面試作為事業單位考試中面試的一種選擇,困擾著很多考生。對此,中公教育專家介紹說,好的語言素材不僅能讓考生在緊張的環境下,答題語言流暢,而且在一定程度可以提高考生的答題深度,可為 一石二鳥 之策。因此,接下來我們就一起來積累語言素材,爭取面試成功。一 人生觀 1....

山西事業單位面試技巧結構化面試語言素材四

結構化面試作為事業單位考試中面試的一種選擇,困擾著很多考生。對此,中公教育專家介紹說,好的語言素材不僅能讓考生在緊張的環境下,答題語言流暢,而且在一定程度可以提高考生的答題深度,可為 一石二鳥 之策。因此,接下來我們就一起來積累語言素材,爭取面試成功。一 人生觀 1.生,我所欲也 義,亦我所欲也 二...

事業單位考試 面試技巧之結構化面試語言素材四

事業單位 結構化面試作為事業單位考試中面試的一種選擇,困擾著很多考生。對此,中公教育專家介紹說,好的語言素材不僅能讓考生在緊張的環境下,答題語言流暢,而且在一定程度可以提高考生的答題深度,可為 一石二鳥 之策。因此,接下來我們就一起來積累語言素材,爭取面試成功。一 人生觀 1.生,我所欲也 義,亦我...