Dataford
Interview QuestionsInterview GuidesExperiencesCoaching
New
Pricing
Get started
Dataford
Popular roles
Software EngineerData AnalystData ScientistData EngineerBusiness AnalystAI EngineerMachine Learning EngineerProduct Manager
Browse
Browse All RolesEvery role hub, from analyst to MLBrowse All CompaniesCompany-specific interview loopsAll Interview GuidesThe full guide library
Top questions by role
Software EngineerData AnalystData ScientistData EngineerBusiness AnalystAI EngineerMachine Learning EngineerProduct Manager
Top questions by skill
SQLPythonStatisticsMachine LearningA/B TestingSystem DesignGenerative AIProduct SenseMetricsBehavioral
Browse all questions →Try a mock interview
Experiences
Practice
Mock InterviewsTimed interview simulations with feedbackCoaching1:1 coaching with people at your target companiesSuccess PathYour 6-week structured planModulesCurated lessons by topicWebinarsTalks from ex-Big Tech data leadsPlaygroundA free-form scratch editor
Learn
BlogInterview strategy and career adviceTech Job Market ReportHiring trends across data and AI rolesFor UniversitiesDataford for career centersAbout DatafordWho we are and how we build
Pricing
Build my plan
SQL Variance Analysis by Region
00:00
5 left

SQL Variance Analysis by Region

MediumSQL · PostgreSQL

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
Interviewer

Your question is SQL Variance Analysis by Region. 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
Sign up free to run your codeLog inLn 1
Run your query to see results here.