0
我有查询其给出的总通话时间总和代理所有年如何总结时间数据类型在SQL Server
SELECT
CONVERT(TIME, DATEADD(s, SUM((DATEPART(hh, TalkTime) * 3600) + (DATEPART(mi, TalkTime) * 60) + DATEPART(ss, TalkTime)), 0))
FROM [CRMIntegration].[dbo].[Five9CallLog]
where AGENT_NAME = 'XYZ'
这是给我的'00:37:01.0000000'
但当我总结出总通话时间为今年到现在使用下面的查询
SELECT
CONVERT(TIME, DATEADD(s, SUM((DATEPART(hh, TalkTime) * 3600) + (DATEPART(mi, TalkTime) * 60) + DATEPART(ss, TalkTime)), 0))
FROM [CRMIntegration].[dbo].[Five9CallLog]
where AGENT_NAME = 'XYZ'
and DateOfcall between
DATEADD(yy, DATEDIFF(yy,0,getdate()), 0) and dateadd(day,datediff(day,1,GETDATE()),0)
查询的结果是'23:34:38.0000000' ,但是这不应该总是小于或等于第一个结果
我用来计算总通话时间的函数是否正确?
一些示例数据可能会有帮助。可能是因为你的第一个结果比一天大,但你没有看到它,因为只处理'TIME'。你可能应该采取一些你关心的最低增量。 – 2014-09-02 15:55:00
你可以使用datediff(s,startTime,endTime)来获得你的开始和结束之间的秒数吗? – Kritner 2014-09-02 15:55:45