本文主要是介绍如何使用Oracle的Decode函数进行多值判断,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
Decode函数的语法结构如下: decode (expression, search_1, result_1) decode (expression, search_1, result_1, search_2, result_2) decode (expression, search_1, result_1, search_2, result_2, ...., search_n, result_n) decode (expression, search_1, result_1, default) decode (expression, search_1, result_1, search_2, result_2, default) decode (expression, search_1, result_1, search_2, result_2, ...., search_n, result_n, default) |
decode函数比较表达式和搜索字,如果匹配,返回结果;如果不匹配,返回default值;如果未定义default值,则返回空值。
以下是一个简单测试,用于说明Decode函数的用法:
SQL> create table t as select username,default_tablespace,lock_date from dba_users;
Table created
SQL> select * from t;
USERNAME DEFAULT_TABLESPACE LOCK_DATE
------------------------------ ------------------------------ -----------
SYS SYSTEM
SYSTEM SYSTEM
DBSNMP SYSTEM
SCOTT SYSTEM
OUTLN SYSTEM 2007-7-30 1
WMSYS SYSTEM 2007-7-30 1
ORDSYS SYSTEM 2007-7-30 1
ORDPLUGINS SYSTEM 2007-7-30 1
MDSYS SYSTEM 2007-7-30 1
CTXSYS DRSYS 2007-7-30 1
XDB XDB 2007-7-30 1
ANONYMOUS XDB 2007-7-30 1
WKSYS DRSYS 2007-7-30 1
WKPROXY DRSYS 2007-7-30 1
ODM ODM 2007-7-30 1
ODM_MTR ODM 2007-7-30 1
OLAPSYS CWMLITE 2007-7-30 1
RMAN TOOLS 2007-7-30 1
HR EXAMPLE 2007-7-30 1
OE EXAMPLE 2007-7-30 1
USERNAME DEFAULT_TABLESPACE LOCK_DATE
------------------------------ ------------------------------ -----------
PM EXAMPLE 2007-7-30 1
SH EXAMPLE 2007-7-30 1
QS_ADM EXAMPLE 2007-7-30 1
QS EXAMPLE 2007-7-30 1
QS_WS EXAMPLE 2007-7-30 1
QS_ES EXAMPLE 2007-7-30 1
QS_OS EXAMPLE 2007-7-30 1
QS_CBADM EXAMPLE 2007-7-30 1
QS_CB EXAMPLE 2007-7-30 1
QS_CS EXAMPLE 2007-7-30 1
30 rows selected
SQL> select username,decode(lock_date,null,'unlocked') status from t;
USERNAME STATUS
------------------------------ --------
SYS unlocked
SYSTEM unlocked
DBSNMP unlocked
SCOTT unlocked
OUTLN
WMSYS
ORDSYS
ORDPLUGINS
MDSYS
CTXSYS
XDB
ANONYMOUS
WKSYS
WKPROXY
ODM
ODM_MTR
OLAPSYS
RMAN
HR
OE
USERNAME STATUS
------------------------------ --------
PM
SH
QS_ADM
QS
QS_WS
QS_ES
QS_OS
QS_CBADM
QS_CB
QS_CS
30 rows selected
这篇关于如何使用Oracle的Decode函数进行多值判断的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!