Dataford
Interview QuestionsInterview GuidesExperiencesMock InterviewsPricing
Get started

Average Delivery Time by Region

EasySQL · PostgreSQL00:00
Practice interviewer
In session
5 left
00:00

Your question is Average Delivery Time by Region. Start with the requirements and the two tables on the right.

Run and submit as often as you like. When you're ready, talk me through your approach or go straight to the code.

You need to log in / sign up to run or submit.

Problem

QuickCart tracks delivery performance across shopper regions. Write a SQL query to find the average delivery time in hours per region for the last month using the orders and shoppers tables.

Requirements

  1. Join orders to shoppers using shopper_id
  2. Only include orders delivered in the previous calendar month based on delivered_at
  3. Exclude rows where delivered_at or placed_at is NULL
  4. Return region and avg_delivery_hours, rounded to 2 decimal places
  5. Sort results by avg_delivery_hours descending, then region ascending

Schema

orders
ColumnTypeDescription
order_idPKINTPrimary key for each order
shopper_idINTReferences the shopper who placed the order
placed_atTIMESTAMPTimestamp when the order was placed
delivered_atTIMESTAMPTimestamp when the order was delivered
order_statusVARCHAR(20)Current order status
shoppers
ColumnTypeDescription
shopper_idPKINTPrimary key for each shopper
shopper_nameVARCHAR(100)Full name of the shopper
regionVARCHAR(50)Region assigned to the shopper
signup_channelVARCHAR(50)Marketing channel used during signup
Tablesordersshoppers
Your solutionPostgreSQL
You need to log in / sign up to run or submit.
Run a query to see results