题解 | #工作日各时段叫车量、等待接单时间和调度时间#

工作日各时段叫车量、等待接单时间和调度时间

https://www.nowcoder.com/practice/34f88f6d6dc549f6bc732eb2128aa338

SELECT 
(CASE 
WHEN TIME(event_time) >= '07:00:00' AND TIME(event_time) < '09:00:00'
THEN '早高峰'
WHEN TIME(event_time) >= '09:00:00' AND TIME(event_time) < '17:00:00'
THEN '工作时间'
WHEN TIME(event_time) >= '17:00:00' AND TIME(event_time) < '20:00:00'
THEN '晚高峰'
WHEN (TIME(event_time) >= '20:00:00' AND TIME(event_time) <= '24:00:00' )
OR (TIME(event_time) >= '00:00:00' AND TIME(event_time) <'07:00:00')
THEN '休息时间'
ELSE NULL
END) AS tag,
COUNT(*) AS get_car_num,
ROUND(AVG(TIMESTAMPDIFF(SECOND,event_time,end_time) / 60),1) AS avg_wait_time,
ROUND(AVG(IF(mileage IS NULL,NULL,TIMESTAMPDIFF(SECOND,order_time,start_time) / 60)),1) AS avg_dispatch_time


FROM tb_get_car_record AS gcr
JOIN tb_get_car_order AS gco
ON gcr.order_id = gco.order_id
WHERE DAYOFWEEK(event_time) BETWEEN 2 AND 6
GROUP BY (CASE 
WHEN TIME(event_time) >= '07:00:00' AND TIME(event_time) < '09:00:00'
THEN '早高峰'
WHEN TIME(event_time) >= '09:00:00' AND TIME(event_time) < '17:00:00'
THEN '工作时间'
WHEN TIME(event_time) >= '17:00:00' AND TIME(event_time) < '20:00:00'
THEN '晚高峰'
WHEN (TIME(event_time) >= '20:00:00' AND TIME(event_time) <= '24:00:00' )
OR (TIME(event_time) >= '00:00:00' AND TIME(event_time) <'07:00:00')
THEN '休息时间'
ELSE NULL
END)
ORDER BY get_car_num ASC;





全部评论

相关推荐

11-28 17:58
门头沟学院 Java
美团 JAVA开发 n×15.5
牛客786276759号:百度现在晋升很难的 而且云这块的业务没美团好 你看百度股价都跌成啥样了
点赞 评论 收藏
分享
hso_:哈哈哈哈哈哈我没offer一样在同一道题开喷了
投递深圳同为数码等公司10个岗位
点赞 评论 收藏
分享
霁华Tel:秋招结束了,好累。我自编了一篇对话,语言别人看不懂,我觉得有某种力量在控制我的身体,我明明觉得有些东西就在眼前,但身边的人却说啥也没有,有神秘人通过电视,手机等在暗暗的给我发信号,我有时候会突然觉得身体的某一部分不属于我了。面对不同的人或场合,我表现出不一样的自己,以至于都不知道自己到底是什么样子的人。我觉得我已经做的很好,不需要其他人的建议和批评,我有些时候难以控制的兴奋,但是呼吸都让人开心。
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务