Dataford
Interview QuestionsInterview GuidesExperiencesMock InterviewsPricing
Get started

SQL for Shipment and Delivery Reporting

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

Your question is SQL for Shipment and Delivery Reporting. Start with the requirements and the three 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

Write a SQL query to report daily shipment volume, on-time delivery rate, and average order cycle time by facility at McKesson.

Use the provided facility, order, and shipment data. Treat on-time rate as the percentage of delivered shipments delivered on or before the promised date. Calculate cycle time only for delivered shipments.

Output

  1. One row per facility and shipment date.
  2. Return facility_code, shipped_date, shipment_volume, on_time_delivery_rate_pct, and avg_order_cycle_time_days.
  3. Include shipment dates represented in the data, sort by facility_code, then shipped_date ascending.

Schema

facilities
ColumnTypeDescription
facility_idPKINTUnique facility identifier
facility_codeVARCHAR(20)Operational facility code
facility_nameVARCHAR(100)Facility name
regionVARCHAR(50)Geographic operating region
orders
ColumnTypeDescription
order_idPKINTUnique customer order identifier
facility_idINTFacility fulfilling the order
order_dateDATEDate the order was placed
priorityVARCHAR(20)Order service priority
shipments
ColumnTypeDescription
shipment_idPKINTUnique shipment identifier
order_idINTOrder associated with the shipment
shipped_dateDATEDate the shipment left the facility
promised_delivery_dateDATECommitted delivery date
delivered_dateDATEActual delivery date
Tablesfacilitiesordersshipments
Your solutionPostgreSQL
You need to log in / sign up to run or submit.
Run a query to see results