题解 | #国庆期间近7日日均取消订单量#

国庆期间近7日日均取消订单量

http://www.nowcoder.com/practice/2b330aa6cc994ec2a988704a078a0703

select *
from(select dt,
       round(sum(finish_num)over(order by dt rows 6 preceding)/7,2) as finish_num_7d,
       round(sum(cancel_num)over(order by dt rows 6 preceding)/7,2) as cancel_num_7d
     from(select date(order_time) dt,
            sum(case when start_time is not null then 1 else 0 end) as finish_num,
            sum(case when start_time is null then 1 else 0 end) as cancel_num
          from tb_get_car_order
          group by date(order_time)
          order by dt) t ) a 
where dt between '2021-10-01' and '2021-10-03'

全部评论
这算法要是有一天的数据是空的就错了吧
3 回复 分享
发布于 2022-08-21 16:48 广东
想问一下前面在18题的时候没有答案用rows 6 preceding,是不是如果天数不是连续的比如9月28没有记录是不是就不能用
2 回复 分享
发布于 2022-03-06 17:51
为什么最后要加SELECT * 啊?
1 回复 分享
发布于 2021-12-13 17:05
这里只计算了用户下单以后,司机接单后才取消的订单量,司机接单之前用户取消的订单不需要计算吗?
1 回复 分享
发布于 2022-07-05 16:44
使用range更严谨,避免过去一天没有数据。avg(finish_num)over(order by dt range INTERVAL 6 DAY PRECEDING)
1 回复 分享
发布于 2022-07-24 15:51
大佬,你可以用你窗口函数做出第18题嘛?
点赞 回复 分享
发布于 2022-04-30 19:00
select t.order_time, round(sum(if(tb_get_car_order.start_time is null,0,1))/7,2)as finish_num_7d, round(sum(if(tb_get_car_order.start_time is null,1,0))/7,2) as cancel_num_7d from (select date(order_time) as order_time, count(start_time) as finishi_cnt, sum(if(start_time is null,1,0)) as unfinishi_cnt from tb_get_car_order group by date(order_time)) as t left outer join tb_get_car_order on datediff(t.order_time,date(tb_get_car_order.order_time)) BETWEEN 0 and 6 where t.order_time BETWEEN '2021-10-01' and '2021-10-03' group by t.order_time;
点赞 回复 分享
发布于 2022-07-14 15:54
请问为什么使用sum(finish_num)over(order by dt rows between INTERVAL 6 DAY PRECEDING and current row )就报错了呢
点赞 回复 分享
发布于 2023-02-12 16:50 广东
大佬,这个答案放进去不对啊
点赞 回复 分享
发布于 2024-11-05 21:05 广东

相关推荐

会员标识
02-20 16:28
已编辑
牛客运营
从03年的“北大毕业生卖猪肉”到前段时间上热搜的“北大博士入职城管”,这些年“下沉式就业”现象频繁牵动着大家的视野和目光吧,很吸睛?我觉得并不是,如果你说985大学生XXX,那可能成不了焦点,如果说是北大清华毕业生去当城管,卖猪肉,大家都会讨论一番,无论是谁都知道北大清华的过人之处。但是呢近些年的确有很多985、211名校毕业生选择到基层就业或回老家创业,会不会觉得大财小用?老家的哥哥,因为当时学的专业不是很好,但好在学校不错,一路本硕连读,毕业之后在上海打拼了2年,也攒了一些小钱,随后回村选择科学养鸡,买了很大一块地开始科学方法的养鸡、卖鸡蛋,村里的老人都会议论纷纷,白瞎了家里供你读书,又回...
下午吃泡馍:不是每一个脱下长衫的人在下沉市场重获新生,并不是每一个养猪养鸡的高学历人才都会成功。现实是很多人的“长衫”就是自己为数不多甚至唯一的底牌了,拼尽全力拿到一个不错的学历,这时候主流媒体告诉对方脱下长衫也可以活的精彩,其实真的挺难过的。强者恒强,但是弱者是人群的底色。 本质上是整个市场的问题,没有足够多的增长点,没有足够多的岗位,自上而下没有积极向上的氛围。外企撤出,供应链缺失...在发展的过程中总有阵痛,现阶段可能就是我们承受阵痛的过程。之前在牛客看到一个小伙伴说:时代的一粒灰尘,落在谁的身上,都将是无法承受之重!深有感触。
点赞 评论 收藏
分享
评论
32
4
分享

创作者周榜

更多
牛客网
牛客企业服务