oracle的case when的用法和decode函數的用法


oracle中,我們要使用case when時,要怎樣使用

如下測試數據,我要把ClassId 的1變成一班,2變成二班,3變成三班,那sql要怎樣寫呢?

1、case when的用法

  -- oracle中case when的用法---
  select A.StuName,A.GENDER,A.AGE,A.Joindate,A.Address,
  (case A.ClassID when 1 then '一班' when 2 then '二班' else '三班' end) ClassName 
  from Student A;

執行后結果

那除了這個case when的用法,oracle還有什么更方法的函數處理這種情況,那就是我們要介紹的decode函數了

2、decode用法

 select A.StuName,A.GENDER,A.AGE,A.Joindate,A.Address,
   (decode(A.ClassId,1,'一班',2,'二班',3,'三班','')) ClassName 
  from Student A;

執行后結果是

注意: 其中最后decode函數的跟case when的寫法是差不多的,只是更簡便,建議遇到這種情況,用decode函數

 


免責聲明!

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



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