Dataford
Interview QuestionsInterview GuidesExperiencesMock InterviewsPricing
Get started

Max Goods in Warehouse

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

Your question is Max Goods in Warehouse. 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

Flexport's warehouse operations team wants to identify peak inventory levels across its facilities. Inventory changes are recorded as completed or non-completed movement events.

Write a PostgreSQL query to determine the maximum number of goods recorded at each warehouse and the interval during which that maximum level was maintained.

Requirements

  1. Consider only events where status = 'completed'.
  2. Calculate each warehouse's inventory level as a cumulative sum of quantity_change, ordered by event_time and event_id.
  3. Return every interval where the warehouse was at its maximum recorded inventory level. The interval ends at the next completed event for that warehouse. A NULL end indicates that no later completed event exists.
  4. Return results ordered by warehouse_id and interval start time.

Schema

warehouses
ColumnTypeDescription
warehouse_idPKINTUnique warehouse identifier
warehouse_nameVARCHAR(100)Flexport warehouse name
regionVARCHAR(50)Geographic operating region
inventory_events
ColumnTypeDescription
event_idPKINTUnique inventory event identifier
warehouse_idINTReferenced warehouse
event_timeTIMESTAMPTime when the movement was recorded
quantity_changeINTNumber of goods added to or removed from inventory
statusVARCHAR(20)Movement processing status
Tableswarehousesinventory_events
Your solutionPostgreSQL
You need to log in / sign up to run or submit.
Run a query to see results