首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

数据统计sql,该如何解决

2013-01-02 
数据统计sql数据表table1部门时间级别A类B类部门A..1是部门B..2是部门C..2是部门C..3是 想统计各个部门 是

数据统计sql
数据表table1
   部门    时间    级别   A类  B类
   部门A   ..        1                是
   部门B   ..        2        是   
   部门C   ..        2                是
   部门C   ..        3        是
 
想统计各个部门 是A类和B类的数据次数
 以上的数据 A类 部门A为0次 部门B为1次 部门C也为一次
 B类  部门A为一次  部门B为0次  部门C为1次
  这种效果 经高人指点已经实现  代码如下:
select 部门,A类=sum(case when A类='是' then 1 else 0 end),
            B类=sum(case when B类='是' then 1 else 0 end)
 from tb group by 部门 

现在 再想把以上稍作调整 
A类       所有部门为2次 部门A为0次 部门B为1次 部门C也为1次
B类       所有部门为2次  部门A为1次  部门B为0次  部门C为1次
A类和B类    一共4次         一共1次         1次            2次

这样可以把上面的sql 做下调整吗?
[解决办法]
结果是什么。
[解决办法]
select isnull(部门,'所有类'),A类=sum(case when A类='是' then 1 else 0 end),
             B类=sum(case when B类='是' then 1 else 0 end)
  from tb group by 部门 with rollup

热点排行