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

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

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

# 问题:请统计国庆头3天里,

# 生成3天时间序列:

with recursive t(dt) as (

select cast('2021-10-01' as date)

union all

select dt + interval 1 day

from t

where dt<'2021-10-03' )

# 每天的近7日日均订单情况,

#时间表左连接订单表,条件是datediff(dt,date(order_time)) between 0 and 6

,t2 as(

select dt,order_time,fare  

from t

left join tb_get_car_order

on datediff(dt,date(order_time)) between 0 and 6 )

# 每天的近7日日均订单完成量和日均订单取消量,

# 按日期升序排序。结果保留2位小数。

select dt

    ,round(sum(if(fare is null,0,1))/count(distinct date(order_time)),2) as finish_num_7d

    ,round(sum(if(fare is null,1,0))/count(distinct date(order_time)),2) as cancel_num_7d

from t2

group by dt

order by  dt

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
正在热议
更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务