程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> 關於Oracle數據庫 >> 如何使用oracle的decode函數進行多值判斷

如何使用oracle的decode函數進行多值判斷

編輯:關於Oracle數據庫

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

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved