Dataford
Interview QuestionsInterview GuidesExperiencesMock InterviewsPricing
Get started
SQL Shrink Rate by Month
00:00
5 left

SQL Shrink Rate by Month

MediumSQL · PostgreSQL

Problem

Write a SQL query to find stores with the highest shrink rate by month and compare them to the chain average at Americaneagle.

Use active stores with valid monthly inventory counts. Define the chain average as the weighted shrink rate across included stores, using expected units as the weight.

Output

  1. One row per highest-shrink store and month, including ties.
  2. Columns: month, store_name, shrink_rate_pct, chain_average_pct, and difference_from_chain_pct.
  3. Sort by month ascending, shrink rate descending, then store name ascending.

Schema

stores
ColumnTypeDescription
store_idPKINTUnique store identifier
store_nameVARCHAR(100)Americaneagle store name
regionVARCHAR(50)Operating region
is_activeBOOLEANWhether the store is currently active
monthly_inventory
ColumnTypeDescription
inventory_idPKINTUnique monthly inventory record
store_idINTReferenced store identifier
month_startDATEFirst day of the inventory month
expected_unitsINTUnits expected according to inventory records
counted_unitsINTUnits found during the physical count
Tablesstoresmonthly_inventory
Interviewer

Your question is SQL Shrink Rate by Month. 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.