Oracle select case when 語法
阿新 • • 發佈:2019-01-30
假如目前我們有一張表
SQL> select * from a ;
ONE TWO
1 1
1 2
3 9
2 3
此時,我們要將表中ONE為1,2,3的,在統計結果中顯示成為A,B,C,TWO中也作相應處理,同時,顯示出ONE列內容,那麼:
SQL> select one, case one when 1 then ‘A’ when 2 then ‘B’ else ‘C’ end A , case TOW when 1 then ‘C ’ when 2 then ‘B’ else ‘D’ end B from a;
ONE A B
1 A C
1 A B
3 C D
2 B D
上面的方法有什麼用呢?其實上面的方法可以用來統計出例如學生成績,如果>=80分是優秀等。
還可以用上sum函式,來統計ONE為1數目:
SQL> select sum( case when one <2 then 1 else 0 end) A from a ;
A
2
SQL>