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

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


# 各时段左闭右开:
# CASE WHEN 7 <= HOUR(event_time) < 9 THEN END period
# 叫车量: COUNT(event_time)
# 等待接单时间: 响应时间 end_time - event_time
# 调度时间:start_time - order_time
# 周一到周五? >> DAYOFWEEK() BETWEEN 2 AND 6 周日是1
# 平均调度时间仅计算完成了的订单?
SELECT CASE 
     WHEN HOUR(event_time) BETWEEN 7 AND 8 THEN "早高峰"
     WHEN HOUR(event_time) BETWEEN 9 AND 16 THEN "工作时间"
     WHEN HOUR(event_time) BETWEEN 17 AND 19 THEN "晚高峰"
     ELSE "休息时间" END period
,COUNT(event_time) get_car_num
,ROUND(AVG(TIMESTAMPDIFF(SECOND,event_time,end_time))/60,1) avg_wait_time # 直接minute只保留整数
,ROUND(AVG(TIMESTAMPDIFF(SECOND,order_time,start_time))/60,1) avg_dispatch_time
FROM tb_get_car_record a JOIN tb_get_car_order b
ON a.order_id = b.order_id
WHERE DAYOFWEEK(event_time) BETWEEN 2 AND 6
GROUP BY CASE 
     WHEN HOUR(event_time) BETWEEN 7 AND 8 THEN "早高峰"
     WHEN HOUR(event_time) BETWEEN 9 AND 16 THEN "工作时间"
     WHEN HOUR(event_time) BETWEEN 17 AND 19 THEN "晚高峰"
     ELSE "休息时间" END
ORDER BY get_car_num

全部评论

相关推荐

不愿透露姓名的神秘牛友
11-26 18:54
说等下个版本吧的发呆爱好者很贪睡:佬最后去了哪家呀
点赞 评论 收藏
分享
10-13 17:47
门头沟学院 Java
wulala.god:图一那个善我面过,老板网上找的题库面的
点赞 评论 收藏
分享
11-18 15:57
门头沟学院 Java
最终归宿是测开:这个重邮的大佬在重邮很有名的,他就喜欢打92的脸,越有人质疑他,他越觉得爽😂
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务