oracle中if/else的3種寫法


1、標准sql規范

 1 一、單個IF
 2 1 3 
 4 if a=...  then
 5 .........
 6 end if;
 7 
 8 2 9 
10 if a=... then
11 ......
12 else
13 ....
14 end if;
15 
16 二、多個IF
17 
18 if a=..  then
19 ......
20 elsif a=..  then
21 ....
22 end if;     
23 這里中間是“ELSIF”,而不是ELSE IF 。這里需要特別注意

2、decode函數

DECODE的語法

DECODE(value,if1,then1,if2,then2,if3,then3,...,else)

表示如果value等於if1時,DECODE函數的結果返回then1,...,如果不等於任何一個if值,則返回else。

3、case when

case when a='1'then 'xxxx'
     when a='2' then 'ssss'
else
  'zzzzz'
end as

注意點: 

1、以CASE開頭,以END結尾 
2、分支中WHEN 后跟條件,THEN為顯示結果 
3、ELSE 為除此之外的默認情況,類似於高級語言程序中switch case的default,可以不加 
4、END 后跟別名


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM