All problems

How Often Do Rides Actually Complete?

easySQLGroupBy

UrbanHop's operations team is adding a reliability tile to its internal dashboard. The tile shows how the month's bookings split between trips that went ahead and trips that fell through, as raw counts rather than percentages.

Every booking carries a status label, and the tile is meant to be built from whatever labels actually turn up in the data — nobody wants to edit the query when a third label such as no_show starts being recorded.

rides — one row per trip booked. status is completed or cancelled in this month's data. fare is in dollars and distance_km in kilometres.

id rider_id driver_id distance_km fare ride_date status
1 1 1 5.2 12.5 2023-06-01 completed
2 1 4 3 8 2023-06-03 completed
3 2 2 10 22 2023-06-02 completed
4 3 1 2.1 6.5 2023-06-05 cancelled
5 3 4 4.4 11 2023-06-06 completed
6 4 3 7.8 18 2023-06-04 completed
7 5 2 1.5 5 2023-06-07 cancelled
8 2 2 12.3 26.5 2023-06-10 completed
9 1 1 6.6 15 2023-06-12 completed
10 4 3 3.3 9 2023-06-15 completed
11 5 2 8.8 19.5 2023-06-18 completed
12 3 4 2.9 7.5 2023-06-20 cancelled

The table already exists in the database — there is nothing to create or load.

Task: Write a query returning two columns, status and num_rides, with one row for each status label that appears in the table. A label that no booking ever used produces no row. Rows come back in alphabetical order of status.

Example output — shape only; the figures below are invented, not this data's answer.

status num_rides
cancelled 6
completed 14

Sign in to solve this problem

Reading problems is free for everyone — solving them (Run, Submit, and tracking what you've solved) needs an account.

Sign in

Discussion

Sign in to join the discussion — reading is open to everyone.

Loading comments…