給定一個時間段,按照時間分組, 分組後,求分組的個數,應答率,平均等待時長(秒),平均通話時長(分鐘)
tmp1.dateTime,tmp1.total ,ifnull(tmp2.total, 0) as answer,ROUND(ifnull(tmp2.total, 0)/tmp1.total*100,1),tmp1.answeravg ,tmp1.calltimeavg
FROM
(
SELECT truncate(AVG(callin.ANSWER_TIME - callin.CREATE_TIME)/1000,0) as answeravg,truncate(AVG(callin.FINISH_TIME - callin.ANSWER_TIME)/(1000*60),0) as calltimeavg,
FROM_UNIXTIME(
callin.CREATE_TIME,
#"%Y-%m-%d %H:%m:%s"
"%Y-%m-%d %H"
) AS dateTime,
COUNT(ID) AS total
FROM
AIIVR_CALLIN_RECORD callin
WHERE
callin.CREATE_TIME >= 1223132422
AND callin.CREATE_TIME <= 1223312111
and callin.IS_DELETE = 0
GROUP BY dateTime
ORDER BY callin.CREATE_TIME ASC) tmp1 LEFT JOIN (SELECT
FROM_UNIXTIME(
callin.CREATE_TIME,
#"%Y-%m-%d %H:%m:%s"
"%Y-%m-%d %H"
) AS dateTime
,COUNT(*) as total
FROM
AIIVR_CALLIN_RECORD callin
WHERE
callin.CREATE_TIME >= 1223132422
AND callin.CREATE_TIME <= 1223312111
and callin.IS_DELETE = 0
and callin.CALL_STATE = 0
GROUP BY dateTime
ORDER BY callin.CREATE_TIME ASC) tmp2 on tmp1.dateTime=tmp2.dateTime