Dataford
Interview QuestionsInterview GuidesExperiencesMock InterviewsPricing
Get started

SQL Variance Analysis by Region

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

Your question is SQL Variance Analysis by Region. Start with the requirements and the three 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

Write a SQL query to analyze monthly operational spend by region, compare it to budget, and flag variances greater than 10%.

Use the provided regional budget and operational spend data. Treat a variance as the percentage difference between actual spend and budget, using the budget as the denominator. Include budgeted region-months even when no spend exists.

Output

  1. One row per budgeted region and month
  2. Columns: region_name, spend_month, actual_spend, budget_amount, variance_amount, variance_pct, and variance_flag
  3. Flag rows when the absolute variance exceeds 10%; order by region name and month

Schema

regions
ColumnTypeDescription
region_idPKINTUnique regional identifier
region_nameVARCHAR(100)Operational region name
regional_budgets
ColumnTypeDescription
budget_idPKINTUnique budget record identifier
region_idINTReferences the budgeted region
month_startDATEFirst day of the budget month
budget_amountNUMERIC(12,2)Approved operational budget for the region and month
operational_spend
ColumnTypeDescription
spend_idPKINTUnique operational spend record identifier
region_idINTRegion associated with the spend
month_startDATEFirst day of the spend month
amountNUMERIC(12,2)Operational spend amount
Tablesregionsregional_budgetsoperational_spend
Your solutionPostgreSQL
You need to log in / sign up to run or submit.
Run a query to see results