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函數
