使用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
OUTLN SYSTEM
CSMIG SYSTEM
SCOTT SYSTEM
EYGLE USERS
DBSNMP SYSTEM
WMSYS SYSTEM 20-OCT-04
8 rows selected.
SQL> select username,decode(lock_date,null,"unlocked","locked") status from t;
USERNAME STATUS
------------------------------ --------
SYS unlocked
SYSTEM unlocked
OUTLN unlocked
CSMIG unlocked
SCOTT unlocked
EYGLE unlocked
DBSNMP unlocked
WMSYS locked
8 rows selected.
SQL> select username,decode(lock_date,null,"unlocked") status from t;
USERNAME STATUS
------------------------------ --------
SYS unlocked
SYSTEM unlocked
OUTLN unlocked
CSMIG unlocked
SCOTT unlocked
EYGLE unlocked
DBSNMP unlocked
WMSYS
8 rows selected.
相關文章
Oracle?19c創(chuàng)建數據庫的完整步驟(詳細明了)
Oracle19c可以用于創(chuàng)建數據庫與表空間,創(chuàng)建表空間特別慢是因為后臺進程多,拉低進程速度導致的,下面這篇文章主要給大家介紹了關于Oracle?19c創(chuàng)建數據庫的完整步驟,需要的朋友可以參考下2023-04-04oracle11g客戶端連接12c服務器ORA-01017錯誤問題解決
這篇文章主要介紹了oracle11g客戶端連接12c服務器ORA-01017錯誤,本文給大家分享完美解決方法,對oracle 12c錯誤ORA-01017問題解決方法感興趣的朋友跟隨小編一起看看吧2023-06-06Oracle 通過impdp導入報ORA-39002 ORA-39165錯誤的解決方案
這篇文章主要介紹了Oracle 通過impdp導入報ORA-39002 ORA-39165錯誤,本文給大家分享原因分析及解決方案,需要的朋友可以參考下2023-09-09