oracle学习笔记之通用函数

一、NVL(exp1,exp2)

--如果第一个参数的值不为看空,则返回第一个参数的值;否则,返回第二个参数的值。


SQL> select NVL(1000,12) FROM DUAL;

NVL(1000,12)
------------
        1000

SQL> select NVL(null,12) FROM DUAL;

NVL(NULL,12)
------------

          12


二、NVL2(exp1,exp2,exp3)

--如果第一个参数的值非空,返回第二个参数的值;否则,返回第三个参数的值。

 

SQL> SELECT NVL2(12,1,-1) FROM dual;

NVL2(12,1,-1)
-------------
            1

SQL> SELECT NVL2(null,1,-1) FROM dual;

NVL2(NULL,1,-1)
---------------

             -1


三、NULLIF(exp1,exp2)

--如果exp1与exp2相等,则返回空;否则,返回exp1。


SQL> SELECT NULLIF(12,12) FROM dual;

NULLIF(12,12)
-------------


SQL> SELECT NULLIF(12,2) FROM dual;

NULLIF(12,2)
------------
          12

 

四、COALESCE(exp1,exp2,exp3,.......expn)

--功能与NVL相似,只不过他表示exp1为空则看exp2,否则返回exp1;同理,如果exp2也为空,返回exp3,否则,返回xep2;。。。。

 

SQL> SELECT COALESCE(null,3,4,null) FROM dual;

COALESCE(NULL,3,4,NULL)
-----------------------
                      3

SQL> SELECT COALESCE(null,null,4,null) FROM dual;

COALESCE(NULL,NULL,4,NULL)
--------------------------
                         4

猜你喜欢

转载自blog.csdn.net/qq_41797451/article/details/80219783