1407. Top Travellers

Fix Names in a Table

透過leetcode 1407Top Travellers來練習

使用table

id 是該表的主鍵。
name 是用戶的名字。

id 是該表的主鍵。
user_id 是經過距離“距離”的用戶的 id。

題目說明:

編寫 SQL 查詢以報告每個使用者行駛的距離。

返回按降序排序的結果表,如果兩個或更多用戶行進的距離相同,則按其升序對它們進行排序。travelled_distancename

查詢結果格式位於以下範例中。



解題:

以下為第一個解題方法

將兩個資料表join起來
sum(isnull(R.distance,0))
group byM.id 也必須加入條件內,因為有可能出現不同id name相同的資料

SELECT M.name as name,sum(isnull(R.distance,0)) as travelled_distance FROM Users M
left outer join Rides R on R.user_id = M.id
group by M.id, M.name
order by travelled_distance desc, M.name ASC

By. @UEW2WaUHTqSmPOSfnfXrNw