每天计算小时数,并在1周内获得最大值

问题描述 投票:-1回答:1

有桌子

表格:时间表约定日期雇员持续时间

希望计算特定日期范围内约会的总时长,但是我想在每日时长上设置最大值。因此,如果某人预订了6个一小时的约会,但又又安排了12个小时的约会,使这一天总计18个小时,我想将每天的最长持续时间总和设置为10个小时以进行每周计算,那么我该如何正确去做。?使用Sql Servman Management Studio]

下面是我的日常代码,只是不确定如何使每个员工的总数达到总和:

select e.emp_id,Case when isnull(SUM(S.DURATION),0) > 10 then 10 else isnull(SUM(S.DURATION),0) end AS hours
from employee e left join Schedule s on s.emp_id = e.EMP_ID AND s.type <> 'z'
AND S.[DATE] >= CONVERT(VARCHAR(10),GETDATE()+1,121)
AND S.[DATE] <= CONVERT(VARCHAR(10),GETDATE()+5,121)
where e.INACTIVE = 'n'
AND E.U_ADVERTIS <> ''
group by s.[date],e.EMP_ID
order by e.EMP_ID
sql sql-server
1个回答
0
投票

DATEPART WK怎么样?>

也可以使用DATEPART ISOWK

© www.soinside.com 2019 - 2024. All rights reserved.