当前位置: 代码迷 >> Sql Server >> 跪求sql存储过程自动定时计算排班存假~该如何处理
  详细解决方案

跪求sql存储过程自动定时计算排班存假~该如何处理

热度:91   发布时间:2016-04-24 09:57:38.0
跪求sql存储过程自动定时计算排班存假~
排班表:

每周存假表:

关系:
1.排班表里根据userid每周的holvalue和overvalue值的累加存到每周存假表里的holvalue字段。
2.现在怎么实现不带参数的存储过程自动计算出每周存假.(正常上班时间为5.5天),排班表里的holvalue值和overvalue值累加减去5.5得出的值就是每周的存假值 。
3.每周存假表中的enddate是每周星期日的日期。
------解决思路----------------------
update b set b.holvalue=a.holvalue
  from 每周存假表 b,(select userid,datepart(week,rangedate) week,year(rangedate) yyyy,sum(holvalue+isnull(overvalue,0)) holvalue from 排班表 group by userid,datepart(week,rangedate),year(rangedate)  ) a
  where b.userid=a.userid
       and year(b.enddate)=a.yyyy
       and datepart(week,b.enddate)=a.week
                            
  相关解决方案