sql行列统计后,行列转换显示

 

----查询每个单位的该专业人员数量
select unitid,majorclass, count(id) cc from person
where unitid like'340%' group by unitid,majorclass
 
unitid majorclass cc[单位编号,专业,人数]
340201 2 97
340202 2 4

----行转列
   select unitid '单位编号',unit.unitname '单位名称'
 ,sum(case majorclass when '1' then cc else 0 end) '通信'
 ,sum(case majorclass when '2' then cc else 0 end) '信号'
 ,sum(case majorclass when '71' then cc else 0 end) '电力'
 ,sum(case majorclass when '64' then cc else 0 end) '测量'
 ,sum(case majorclass when '65' then cc else 0 end) '桥梁'
 ,sum(cc) '合计'
 from
 (
  select unitid,majorclass, count(id) cc from person where unitid like'340%' group by unitid,majorclass
  )
  b,unit where b.unitID=unit.unitcode  GROUP by unitid,unitname
 
单位编号 单位名称 通信 信号 电力 测量 桥梁 合计
340201 二局一公司 0 97 0 0 0 97
340202 二局二公司 0 4 0 0 0 4

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值