select * from t3  YW         SX         YY
---- ---------- ----------
  34         68         97
  66         85         97
  77         85         97想要下面的效果:
  语文        数学        英语
---- ---------- ----------
  不及格      及格       优秀
  及格        优秀       优秀
  良好        优秀       优秀
用case来实现怎么做?
只要能出结果就好。
谢谢了。初学。

解决方案 »

  1.   

    select case when yw<60 then '不及格' elsif yw<70 then '良好' elsif '优秀' end ,
     case when sx<60 then '不及格' elsif sx<70 then '良好' elsif '优秀' end ,
     case when yy<60 then '不及格' elsif yy<70 then '良好' elsif '优秀' end 
    from t3;
      

  2.   


    这么写:SELECT CASE
             WHEN yw < 60 THEN
              '不及格'
             WHEN yw >= 60 AND yw < 70 THEN
              '良好'
             ELSE
              '优秀'
           END,
           CASE
             WHEN sx < 60 THEN
              '不及格'
             WHEN sx >= 60 AND sx < 70 THEN
              '良好'
             ELSE
              '优秀'
           END,
           CASE
             WHEN yy < 60 THEN
              '不及格'
             WHEN yy >= 60 AND yy < 70 THEN
              '良好'
             ELSE
              '优秀'
           END
      FROM t3;