Fare per kilometer by city

calculations

Fare per kilometer by city

Uber SQL Interview Question

Uber's pricing team compares cities by how much riders pay for each kilometer traveled.

For completed trips, find each city and its fare per kilometer as fare_per_km: the city's total fare divided by its total distance, rounded to 2 decimal places. Do not average the per-trip values. Sort the rows by fare_per_km, highest first.

Asked of

  • Data Analyst
  • Business Analyst
  • BI Analyst
  • Data Scientist

tripsTable14 rows

Column NameType
trip_idBIGINT
rider_idBIGINT
driver_idBIGINT
cityVARCHAR
requested_atTIMESTAMP
statusVARCHAR
distance_kmDOUBLE
fareDOUBLE

tripsExample Input

trip_idrider_iddriver_idcityrequested_atstatusdistance_kmfare
9001301401Chicago2024-05-03 07:42:00completed8.418.9
9002302402Chicago2024-05-03 08:15:00completed3.19.5
9003303403Austin2024-05-03 08:47:00rider_canceled00
9004304404Austin2024-05-03 12:05:00completed12.624.3
9005305401Chicago2024-05-03 17:30:00completed5.213.4
9006306405Seattle2024-05-03 17:55:00driver_canceled00
9007307406Seattle2024-05-03 18:10:00completed9.826.1
9008308402Chicago2024-05-03 18:25:00completed4.411.2

Example Output

cityfare_per_km
Seattle2.66
Chicago2.51
Austin1.93

Explanation

Chicago's completed trips earned 53.00 in fares over 21.1 kilometers, which is 2.51 per kilometer. Averaging each trip's own rate would give a different number, because short trips would count as much as long ones. Canceled trips have no fare or distance, so they are not included.

The example above is a small slice of the data. Your query runs against the full tables.