1407 排名靠前的旅行者
作者:互联网
写一段 SQL , 报告每个用户的旅行距离。
返回的结果表单,以 travelled_distance 降序排列 ,如果有两个或者更多的用户旅行了相同的距离, 那么再以 name 升序排列 。
查询结果格式如下例所示。
Elvis 和 Lee 旅行了 450 英里,Elvis 是排名靠前的旅行者,因为他的名字在字母表上的排序比 Lee 更小。
Bob, Jonathan, Alex 和 Alice 只有一次行程,我们只按此次行程的全部距离对他们排序。
Donald 没有任何行程, 他的旅行距离为 0。
方法1:
主要思路:解题链接汇总
# Write your MySQL query statement below
select u.name as name ,ifnull(sum(r.distance),0) as travelled_distance
from Users as u left join Rides as r
on u.id = r.user_id
group by u.name
order by sum(r.distance) desc , u.name asc
标签:distance,name,旅行,距离,旅行者,排名,travelled,1407,Lee 来源: https://blog.csdn.net/weixin_44171872/article/details/120099482