SQL QuestSQL Interview Questions › Joins

Detect Repeat Buyers Within 7 Days

HardProQuerying BasicsJoinsDate Functions

Amazon's Prime retention team defines a repeat buyer as anyone who orders again within 7 days of a previous order — it's the strongest early signal that a buyer has formed the habit worth nurturing. Self-join the orders table to find pairs where the same customer has two orders 1–7 days apart. Return customer_id, first_order_date, repeat_order_date, and days_between (integer). Only show each pair once (first_order_date < repeat_order_date). Sort by days_between ascending, then customer_id. This exact pattern is interview-tested at Amazon, Instacart, and DoorDash because marketplace retention math is the job.

Solve it in the browser editor →

Runs on SQLite in your browser, graded against the expected result, no signup. A wrong answer gets a diagnosis, not just "incorrect".

Schema

orders

order_idcustomer_idproductcategoryquantitypricetotalorder_datecountrystatus
11Laptop ProElectronics11299.991299.992024-01-15USAcompleted
22Wireless MouseElectronics249.9999.982024-01-16Canadacompleted
33Office ChairFurniture1349.99349.992024-01-17USAcompleted

Expected output: days_between = 5

Hint

This is a Pro challenge — the hint, the step-by-step tutor and the reference solution open in the app.

Concepts

SELECT Self-Join Date Functions DISTINCT BETWEEN Self-Join + Date Functions

Practise the topic: SQL practice questions · JOIN practice · Date function practice · Advanced SQL interview questions

In these company practice sets

Airbnb · Amazon · Anthropic · Meta · OpenAI · Revolut · Shopify · Stripe · Uber · DoorDash

A SQL Quest challenge matched to patterns reported for these companies — not a question any of them has published.

Related questions

Multi-CTE Revenue PipelineHard · FreeEmployees Earning More Than ManagerHard · ProEmployees with Similar SalariesHard · ProMoving Average with Dynamic WindowHard · ProRecursive Team Size RollupHard · ProConsecutive IDsHard · Pro

Where would this cost you points in an interview?

Ten questions, no signup: a Skillmap across nine SQL skills and the one to fix first.

Take the readiness test