题解 | #每个城市中评分最高的司机信息#

每个城市中评分最高的司机信息

https://www.nowcoder.com/practice/dcc4adafd0fe41b5b2fc03ad6a4ac686

select 
    city,
    driver_id,
    round(avg_grade,1),
    round(avg_order_num,1),
    round(avg_mileage,3)
from(
    select 
        *,
        rank() over (partition by city order by avg_grade desc) as rk
    from(
        select
            city,
            driver_id,
            avg(grade) as avg_grade,
            max(cnt)/count(distinct dt) as avg_order_num,
            sum(mileage)/count(distinct dt) as avg_mileage
        from(
            select 
                city,
                driver_id,
                grade,
                mileage,
                date(order_time) as dt,
                count(*) over(partition by driver_id) as cnt
            from 
                tb_get_car_order as a
            left join tb_get_car_record
            using(order_id)
        ) as t
        group by 1,2) as t2) as t3
where rk=1
order by avg_order_num asc

全部评论

相关推荐

05-20 02:34
已编辑
华中科技大学 游戏策划
ResourceUtilization:你是我见过最美丽的牛客女孩你的眼睛里面有星星
投递腾讯等公司6个岗位
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务