Case and Group by

表格字段:科室ID,姓名ID,分组,数量
表格数据:Dept_A ,U1,G1, 20;
Dept_A ,U1,G2, 5;
Dept_B ,U1,G1, 3;
Dept_B ,U1,G2, 0;
要实现的效果:
科室ID,姓名ID,G1的数量,G2的数量
Dept_A ,U1, 20 , 5 ;
Dept_B ,U1, 3 , 0 ;
其实就是把分组和数量两列横向展示,

select 科室ID,姓名ID,Sum(case 分组 when 'G1' then 数量 else 0 end) as G1的数量,
Sum(case 分组 when 'G2' then total else 0 end) as G2的数量
from tab group by 科室ID,姓名ID;

原文地址:https://www.cnblogs.com/sandy_liao/p/1864795.html