mirror of
				https://gitee.com/coder-xiaomo/leetcode-problemset
				synced 2025-11-04 03:33:12 +08:00 
			
		
		
		
	
		
			
				
	
	
		
			86 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
			
		
		
	
	
			86 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
<p>Table: <code>Users</code></p>
 | 
						|
 | 
						|
<pre>
 | 
						|
+---------------+---------+
 | 
						|
| Column Name   | Type    |
 | 
						|
+---------------+---------+
 | 
						|
| id            | int     |
 | 
						|
| name          | varchar |
 | 
						|
+---------------+---------+
 | 
						|
id is the column with unique values for this table.
 | 
						|
name is the name of the user.
 | 
						|
</pre>
 | 
						|
 | 
						|
<p> </p>
 | 
						|
 | 
						|
<p>Table: <code>Rides</code></p>
 | 
						|
 | 
						|
<pre>
 | 
						|
+---------------+---------+
 | 
						|
| Column Name   | Type    |
 | 
						|
+---------------+---------+
 | 
						|
| id            | int     |
 | 
						|
| user_id       | int     |
 | 
						|
| distance      | int     |
 | 
						|
+---------------+---------+
 | 
						|
id is the column with unique values for this table.
 | 
						|
user_id is the id of the user who traveled the distance "distance".
 | 
						|
</pre>
 | 
						|
 | 
						|
<p> </p>
 | 
						|
 | 
						|
<p>Write a solution to report the distance traveled by each user.</p>
 | 
						|
 | 
						|
<p>Return the result table ordered by <code>travelled_distance</code> in <strong>descending order</strong>, if two or more users traveled the same distance, order them by their <code>name</code> in <strong>ascending order</strong>.</p>
 | 
						|
 | 
						|
<p>The result format is in the following example.</p>
 | 
						|
 | 
						|
<p> </p>
 | 
						|
<p><strong class="example">Example 1:</strong></p>
 | 
						|
 | 
						|
<pre>
 | 
						|
<strong>Input:</strong> 
 | 
						|
Users table:
 | 
						|
+------+-----------+
 | 
						|
| id   | name      |
 | 
						|
+------+-----------+
 | 
						|
| 1    | Alice     |
 | 
						|
| 2    | Bob       |
 | 
						|
| 3    | Alex      |
 | 
						|
| 4    | Donald    |
 | 
						|
| 7    | Lee       |
 | 
						|
| 13   | Jonathan  |
 | 
						|
| 19   | Elvis     |
 | 
						|
+------+-----------+
 | 
						|
Rides table:
 | 
						|
+------+----------+----------+
 | 
						|
| id   | user_id  | distance |
 | 
						|
+------+----------+----------+
 | 
						|
| 1    | 1        | 120      |
 | 
						|
| 2    | 2        | 317      |
 | 
						|
| 3    | 3        | 222      |
 | 
						|
| 4    | 7        | 100      |
 | 
						|
| 5    | 13       | 312      |
 | 
						|
| 6    | 19       | 50       |
 | 
						|
| 7    | 7        | 120      |
 | 
						|
| 8    | 19       | 400      |
 | 
						|
| 9    | 7        | 230      |
 | 
						|
+------+----------+----------+
 | 
						|
<strong>Output:</strong> 
 | 
						|
+----------+--------------------+
 | 
						|
| name     | travelled_distance |
 | 
						|
+----------+--------------------+
 | 
						|
| Elvis    | 450                |
 | 
						|
| Lee      | 450                |
 | 
						|
| Bob      | 317                |
 | 
						|
| Jonathan | 312                |
 | 
						|
| Alex     | 222                |
 | 
						|
| Alice    | 120                |
 | 
						|
| Donald   | 0                  |
 | 
						|
+----------+--------------------+
 | 
						|
<strong>Explanation:</strong> 
 | 
						|
Elvis and Lee traveled 450 miles, Elvis is the top traveler as his name is alphabetically smaller than Lee.
 | 
						|
Bob, Jonathan, Alex, and Alice have only one ride and we just order them by the total distances of the ride.
 | 
						|
Donald did not have any rides, the distance traveled by him is 0.
 | 
						|
</pre>
 |