计算有效工作时间

时间:2016-03-07 20:32:43

标签: sql sql-server time time-complexity

我们正忙于报告,以计算每个用户的客户的通话费率。 用户为系统中的字段中的所有活动/移动加载活动(调用)。例如:会议,离开等。

我们想要在Field中计算用户有效小时数,即离开等。排除

这是我的查询

SELECT  U.SubscriberID,
        U.Name,
        UT.EntityName,
        UT.Subject,
        UT.StartDate,
        UT.EndDate,
        UTT.Name AS TaskType,
        UT.UserTaskTypeID, 
        (Select Case when DatePart(DAY,UT.EndDate)<> DatePart(DAY,UT.StartDate) then Abs(DATEDIFF(Day, UT.StartDate, UT.EndDate) + 1) * 480 Else Abs(DATEDIFF(MINUTE, UT.StartDate, UT.EndDate)) End) AS OOF_Minutes
FROM [User] AS U
INNER JOIN UserTask AS UT ON U.UserID = UT.UserID
INNER JOIN UserTaskType AS UTT ON UT.UserTaskTypeID = UTT.UserTaskTypeID
WHERE      (U.SubscriberID = 261) AND (UT.UserTaskTypeID = 1401)
AND U.Name = 'Geoffrey Coetzee'

这是我的结果:

enter image description here

如何归档以下内容:

  1. 使用报表隐含的用户因子计算两个日期(开始日期和结束日期)之间的持续时间(以分钟为单位),以计算字段中的有效小时数。 (工作天数* 8小时/天 - 外地(任务类型)小时数
  2. 将活动数量(非外地活动)除以有效通话费率因子
  3. 这有点令人困惑,但很高兴解释其背后的商业案例。

0 个答案:

没有答案
相关问题