Dataford
Interview QuestionsInterview GuidesExperiencesMock InterviewsPricing
Get started

Consecutive Month Purchasers

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

Your question is Consecutive Month Purchasers. 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

Revature wants to identify customers who remain active across consecutive calendar months. Write a PostgreSQL query that analyzes purchase history and returns every consecutive month pair for each qualifying customer.

Requirements

  1. Collapse multiple purchases by the same customer within a month into one monthly record.
  2. Use a window function to compare each purchase month with the customer's previous purchase month.
  3. Treat consecutive months as calendar months, including transitions such as December to January.
  4. Return the customer, the earlier month, the later month, and the number of purchases made in the later month.
  5. Exclude customers without a qualifying consecutive-month pair and order the output by customer ID and later month.

Schema

customers
ColumnTypeDescription
customer_idPKINTEGERUnique customer identifier
customer_nameVARCHAR(100)Customer's name
purchases
ColumnTypeDescription
purchase_idPKINTEGERUnique purchase identifier
customer_idINTEGERReferences customers.customer_id
purchased_atTIMESTAMPTimestamp when the purchase occurred
amountNUMERIC(10,2)Purchase amount
Tablescustomerspurchases
Your solutionPostgreSQL
You need to log in / sign up to run or submit.
Run a query to see results