【发布时间】:2020-02-12 12:17:30
【问题描述】:
我有一个包含座席呼叫活动的数据库,我正在寻找座席将自己置于忙碌状态超过三分钟,然后在一分钟内休息的情况。我的结果需要显示 Break 行和 Busy 行。
我已经做到了这一点,但我的头在拐弯处 - 任何帮助我都会很感激!
SELECT *
FROM
DBO.AgentActivityReport Ar1
Inner join dbo.AgentActivityReport Ar2
on Ar1.[User_ID] = Ar2.[User_ID]
WHERE
(
Ar1.[ACTIVITY] = 'Busy'
AND
Ar1.[DURATION] > '00:03:00.0000000'
)
OR
(
Ar1.[ACTIVITY] LIKE 'Break (Tea Break)'
AND
Ar1.[DURATION] > '00:10:00.0000000'
)
OR
(
Ar1.[ACTIVITY] LIKE 'Break (Lunch Break)'
AND
Ar1.[DURATION] > '00:30:00.0000000'
)
AND Ar1.Activity in (select Ar2.Activity from dbo.AgentActivityReport Ar2 where Ar2.Activity in ('Break (Tea Break)','Break (Lunch Break)'))
【问题讨论】:
-
请标记您的数据库供应商。
DBO建议使用 MSSQL。