题解 | #各城市最大同时等车人数#

各城市最大同时等车人数

http://www.nowcoder.com/practice/f301eccab83c42ab8dab80f28a1eef98

ATTENTION 两个坑: 1.sum加over函数累计和,一定要记得order by dt再加上 状态 desc 2.!!!union 会把分表中的重复行也删去,第二个例子有两个人同时打车,所以加了order_id区分

select city, max(t)  as mt
from
(select city, dt,sum(waiting) over(partition by city order by dt,waiting desc) as t
from
(select city,event_time as dt, 1 as waiting ,order_id
from
tb_get_car_record
 WHERE LEFT(event_time, 7) = '2021-10'
union
select  city,
       if(start_time is null,finish_time,start_time) as dt,
       -1 as waiting,tb_get_car_order.order_id
from
tb_get_car_order inner join tb_get_car_record using(order_id)
WHERE LEFT(event_time, 7) = '2021-10'
) base
)tmp
group by city
order by mt,city
全部评论
union 会把分表中的重复行也删去!!!!精髓
点赞 回复 分享
发布于 2022-02-18 18:13

相关推荐

01-02 00:50
三峡大学 Java
程序员牛肉:这简历一出手就离失业不远了。 作为一家公司来讲,我如果要招日常实习生,那我对实习生最基本的要求就是要能干活,毕竟你就待三四个月,谁会留心培养你? 那么除了院校之外,最重要的就是项目和实习了。没有实习的话项目就好好搞。 但是你说你这个项目吧:课程作业管理系统和TMS运输管理系统。这两个基本就和闹着玩差不多。 你作为一个想要应聘Java开发实习生的人,对后端的理解还仅仅停留在:“使用mapper和sql映射”,“使用SQL进行多表调用”,“基于MySQL简历表结构”,“基于Spring boot完成CURD操作”这种玩具上......... 找不到后端实习的
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务