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

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

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

# 问题:请统计每个城市中评分最高的司机平均评分、日均接单量和日均行驶里程数。

# 注:有多个司机评分并列最高时,都输出。

# 平均评分和日均接单量保留1位小数,

# 日均行驶里程数保留3位小数,按日均接单数升序排序。

# 找出符合条件的司机各类信息

with  t as(

select driver_id,order_id,order_time,mileage,grade,city

from tb_get_car_record

join tb_get_car_order using(uid,order_id) )

# 生成每个城市、司机的均分、日均接单、日均里程等信息表

,t1 as(

select city,driver_id

    ,round(sum(grade)/count(grade),1) avg_grade

    ,round(count(order_id)/count(distinct date(order_time)),1)  avg_order_num

    ,round(sum(mileage)/count(distinct date(order_time)),3) avg_mileage

from t

group by city,driver_id )

# 找出最大评分

select  city

    ,driver_id

    ,avg_grade

    ,avg_order_num

    , avg_mileage

from t1

where avg_grade in (select max(avg_grade) from t1)

全部评论

相关推荐

船长想实习:我啥技术不会决定去试试,然后进去也不干活就搅局可以吗?
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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