oracle中if/else的三種實現方式


1、標准sql規范

1、單個IF
IF v=...  THEN 
  END IF;

2IF ... ELSE 
IF v=... THEN
  ELSE
    t....;
    END IF;  
    
3、多個IF
IF v=... THEN
  ELSIF  v=...  THEN 
    t...;
    END IFL
    
注意: 多個IF的是'ELSIF' 不是 ' ELSE IF'

2、decode函數

DECODE(VALUE,IF1,THEN1,IF2,THEN2,IF2,THEN2,..,ELSE)     

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

 

3、case when

CASE WHERE v=... THEN 'vvvvv';
     WHERE v=... THEN  'ffff';
  ELSE
     .....;
END AS '別名';

注意點: 

1、以CASE開頭,以END結尾

2、分支中WHEN 后跟條件,THEN為顯示結果

3、ELSE  為除此之外的默認情況,類似於高級語言程序中switch case的default,可以不加

4、END 后跟別名  


免責聲明!

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



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