Dataford
Interview QuestionsInterview GuidesExperiencesMock InterviewsPricing
Get started
SQL Query Scenarios for Business Data
00:00
5 left

SQL Query Scenarios for Business Data

MediumSQL · PostgreSQL

Problem

Given a storyline-based business scenario, write 4 SQL queries (joins, aggregations, filtering) and discuss query optimization.

Asked in the R3 SQL stage. Final round; the recruiter had said to prepare basic system design, database design, SQL, and web architecture.

Output

  1. Query 1: region, completed_orders, and completed_revenue, including regions without completed orders, ordered by revenue descending.
  2. Query 2: customer_id, customer_name, and total_spent for customers spending over 100, ordered by spending descending.
  3. Query 3: product_category and category_revenue for completed order items, ordered by revenue descending.
  4. Query 4: one row per customer with customer_id, customer_name, latest_order_id, and latest_order_date, ordered by customer ID.

Schema

customers
ColumnTypeDescription
customer_idPKINTUnique customer identifier
customer_nameVARCHAR(100)Customer display name
regionVARCHAR(50)Customer sales region
orders
ColumnTypeDescription
order_idPKINTUnique order identifier
customer_idINTCustomer who placed the order
order_dateDATEDate the order was placed
statusVARCHAR(20)Order lifecycle status
order_totalNUMERIC(12,2)Total order value
order_items
ColumnTypeDescription
order_item_idPKINTUnique order-item identifier
order_idINTParent order identifier
product_categoryVARCHAR(60)Category of the purchased product
quantityINTNumber of units purchased
unit_priceNUMERIC(10,2)Price per unit
Tablescustomersordersorder_items
Interviewer

Your question is SQL Query Scenarios for Business Data. 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.