表A:
name   fenshu
a        80
b        44
c        60
d        78按照分数大于80优秀,60-80合格,60以下差
怎么转换成下列样子.一句sql
表B  
name   fenshu   XX
a        80     优秀
b        44     差
c        60     合格
d        78     合格

解决方案 »

  1.   

    select name,fenshu,case when fenshu between 60 and 80 then "合格" when fenshu < 60 then "差" else "优秀" end xx
    from a;
      

  2.   


    select name,fenshu,
    case when fenshu>=80 then '优秀' 
         when fenshu>60 and fenshu<80 then '合格'
          else '差' end xx
    from a
      

  3.   


    SELECT NAME,
           FENSHU,
           CASE 
             WHEN FENSHU > 80 THEN
                '优秀'
             WHEN FENSHU BETWEEN 60 AND 80 THEN
                '合格'
             ELSE
                '差'
           END XX
      FROM A
            你试试。
      

  4.   

    select name,fenshu,(case when fenshu>=80 then '优秀' when fenshu>=60 then '合格' else '差end) as xx
    from a;
      

  5.   

    select name,fenshu,case when fenshu between 60 and 80 then "合格" when fenshu < 60 then "差" else "优秀" end xx
    from a;
      

  6.   

    把上面的双引号修改成但引号。
    SELECT ename, sal,   
           (CASE   
              WHEN sal between 1000 AND 3000  
                 THEN '合格'  
              WHEN sal < 1000  
                 THEN '差'  
              WHEN sal > 3000  
                 THEN '优秀'  
           END) xxx   
    FROM emp;