Dataford
Interview QuestionsInterview GuidesExperiencesMock InterviewsPricing
Get started
Top Customer Segment SQL
00:00
5 left

Top Customer Segment SQL

MediumSQL · PostgreSQL

Problem

Write a SQL query to identify the top customer segment by revenue using transaction data, including joins and aggregations as needed at Stone.

Use the provided transaction, customer, and segment data. Return every segment tied for the highest total revenue.

Output

  1. One row per top segment, with segment_id, segment_name, and total_revenue.
  2. Include only segments tied for the highest revenue.
  3. Order by total_revenue descending, then segment_name ascending.

Schema

customer_segments
ColumnTypeDescription
segment_idPKINTUnique customer segment identifier
segment_nameVARCHAR(100)Customer segment name
customers
ColumnTypeDescription
customer_idPKINTUnique customer identifier
customer_nameVARCHAR(150)Customer name
segment_idINTCustomer segment identifier
transactions
ColumnTypeDescription
transaction_idPKINTUnique transaction identifier
customer_idINTCustomer associated with the transaction
amountDECIMAL(12,2)Transaction revenue amount
Tablestransactionscustomerscustomer_segments
Interviewer

Your question is Top Customer Segment SQL. Start with the requirements and the three 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.