当前位置: 代码迷 >> Sql Server >> 达人帮小弟我
  详细解决方案

达人帮小弟我

热度:27   发布时间:2016-04-27 15:25:00.0
达人帮我.
表如下:
gh                             rq                           zbs               jbgs
810364                   2006/2/21                   8                   0
800004                   2006/4/17                   8                   2.5
810065                   2006/7/13                   8                   0
810068                   2006/2/14                   8                   2.5
810003                   2006/10/25                 8                   2.5
      .                                 .                           .                 .
      .                                 .                           .                 .
      .                                 .                           .                 .
      .                                 .                           .                 .
      .                                 .                           .                 .

现在要做的就是
1.统计2006年所有员工每个月,每年的加班.要求是把每个月jbgs总计大于36的员工gh,以及月份输出来
2.把2006年jbgs总时超过(36*12)432的员工的gh输出来.
3.用2的结果和另外一张表(gzb)中的zgs.jbs比较.把不同的员工的GH.以及当月的月份输出来.
zbs=上表中一个月所有zbs之和
jbs=上表中所有jbgs之和(这两组数年据本来是一样的.但是GZB中有些数据手工改动过.所以想把不同的输出来.)


谢谢.新人.如果分不够.再开贴补上.

------解决方案--------------------
1
select gh,year(rq),month(rq),sum(jbgs)
group by gh,year(rq),month(rq)
having sum(jbgs) > 36

2
select gh,year(rq),sum(jbgs)
group by gh,year(rq)
having sum(jbgs) > 36*12

3不明白
------解决方案--------------------
--1\统计2006年所有员工每个月,每年的加班.要求是把每个月jbgs总计大于36的员工gh,以及月份输出来

select gh,convert(char(7),rq,111) YF,SUM(zbs) zbs,sum(jbgs) jbgs
  相关解决方案