难点:
业务需求按照操作时间进行等分时间段进行统计半小时的进线量等数据,中间会存在空白的操作时间,将不能讲24小时分割成48段
具体的数据如下:
截图可以看出12月30号的数据从2019-12-30 10:19:32开始,之前是没有操作记录的
1. 可在对应的数据库中新建一张临时表
将24小时分割的48段存入表中,进行left join(针对已上线项目,这一操作不是最优的解决办法)
2. 在SQL实现,如下
SELECT DATE_FORMAT(rs.operation_time, '%Y-%m-%d') '日期',
t.time '时间',
IFNULL(rs.inLineCount, 0) '进线总量',
IFNULL(rs.receptionCount, 0) '所有坐席接起总量',IFNULL(rs.missCount,0) '进线量(流转次数>1)'
FROM
(
SELECT '00:00-00:30' time union
SELECT '00:30-01:00' time union
SELECT '01:00-01:30' time union
SELECT '01:30-02:00' time union
SELECT '02:00-02:30' time union
SELECT '02:30-03:00' time union
SELECT '03:00-03:30' time