Dataford
Interview QuestionsInterview GuidesExperiencesMock InterviewsPricing
Get started
SQL for On-Time Shipment Rates
00:00
5 left

SQL for On-Time Shipment Rates

MediumSQL · PostgreSQL

Problem

Write a SQL query to identify the top 10 warehouses by on-time shipment rate over the last 90 days, including total shipments, on-time shipments, and on-time percentage.

Use the warehouses and shipments tables. Treat a shipment as on time when delivered_at is not null and is on or before promised_delivery_at.

Output

  1. One row per qualifying warehouse, with warehouse_name, total_shipments, on_time_shipments, and on_time_percentage.
  2. Include only shipments from the last 90 days and warehouses with at least one shipment.
  3. Sort by on-time percentage descending, then total shipments descending, then warehouse ID ascending. Return no more than 10 rows.

Schema

warehouses
ColumnTypeDescription
warehouse_idPKINTUnique warehouse identifier
warehouse_nameVARCHAR(100)Warehouse name
regionVARCHAR(50)Operational region
shipments
ColumnTypeDescription
shipment_idPKINTUnique shipment identifier
warehouse_idINTWarehouse that handled the shipment
tracking_numberVARCHAR(30)Shipment tracking number
shipment_dateDATEDate the shipment left the warehouse
promised_delivery_atDATEPromised delivery date
delivered_atDATEActual delivery date, or null if not delivered
Tableswarehousesshipments
Interviewer

Your question is SQL for On-Time Shipment Rates. Start with the requirements and the two tables in the Question tab.

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.
CodePostgreSQL
You need to log in / sign up to run or submit.Ln 1
Run your query to see results here.