zoukankan      html  css  js  c++  java
  • 待研究 case when 和decode

     假设有张学生成绩表(CJ)如下 
    [姓名] [学科] [成绩] 
    张三 语文 80 
    张三 数学 86 
    张三 英语 75 
    李四 语文 78 
    李四 数学 85 
    李四 英语 78 

    现有需求如下:
    (1)要求统计分数段的人数。显示结果为:
    [成绩]      [人数]
    0<成绩<60      0 
    60<成绩<80      3
    80<成绩<100    3

    with w as (select 'zhang' name, 'chinese' subject,80 score from dual
      union all
              select 'zhang' name, 'math' subject,86 score from dual
           
      union all
     
      select 'zhang' name, 'english' subject,75 score from dual
      union all
     
      select 'li' name, 'english' subject,78 score from dual
      union all
     
      select 'li' name, 'math' subject,85 score from dual
      union all
     
      select 'li' name, 'chinese' subject,78 score from dual
      )
     select w.*  from w

    with w as (select 'zhang' name, 'chinese' subject,80 score from dual
      union all
              select 'zhang' name, 'math' subject,86 score from dual
           
      union all
      
      select 'zhang' name, 'english' subject,75 score from dual
      union all
      
      select 'li' name, 'english' subject,78 score from dual
      union all
      
      select 'li' name, 'math' subject,85 score from dual
      union all
      
      select 'li' name, 'chinese' subject,78 score from dual
      )
     select w.*  from w 
    

      select w.*, decode( score, score >=0 and score<60  ,'0-60',
         score>=60 and score<80, '60-80', score>=80 and score<100 , '80-100', else)  from w
    这样不行

    select dj,count(*) rs from(select xm,xk,case when cj>=0 and cj<60 then 'c' when cj>=60 and cj<80 then 'b' when cj>=80 and cj<=100 then 'a' end dj from cjb)
    group by dj
    
  • 相关阅读:
    51NOD 1069 Nim游戏
    51NOD 1066 Bash游戏
    51NOD 1058 N的阶乘的长度
    51NOD 1057 N的阶乘
    51NOD 1027 大数乘法
    RMQ 区间最大值 最小值查询
    Codeforces Round #426 (Div. 2) C. The Meaningless Game
    51NOD 1046 A^B Mod C
    OJ上 编译器 G++和C++的区别
    二分暑假专题 训练记录 2017-7-29
  • 原文地址:https://www.cnblogs.com/sumsen/p/2837669.html
Copyright © 2011-2022 走看看