Dataford
Interview QuestionsInterview GuidesExperiencesMock InterviewsPricing
Get started
SQL Window Functions for Power Usage
00:00
5 left

SQL Window Functions for Power Usage

HardSQL · PostgreSQL

Problem

How would you design a SQL query using window functions to compare each data center's monthly power usage against its prior month and rolling 3-month average?

Assume raw power readings may contain multiple records per data center and month, and some months may have no readings. Return calendar months across the overall reading period, preserving data centers without readings.

Output

  1. One row per data center and calendar month.
  2. Columns: center_id, center_name, usage_month, monthly_power_kwh, prior_month_kwh, and rolling_3_month_avg_kwh.
  3. Sort by center_id, then usage_month ascending.

Schema

data_centers
ColumnTypeDescription
center_idPKINTUnique data center identifier
center_codeVARCHAR(20)Short data center code
center_nameVARCHAR(100)Data center display name
power_readings
ColumnTypeDescription
reading_idPKINTUnique power reading identifier
center_idINTReferenced data center
reading_atTIMESTAMPTimestamp of the power reading
power_kwhNUMERIC(12,2)Energy consumed in kilowatt-hours
Tablesdata_centerspower_readings
Interviewer

Your question is SQL Window Functions for Power Usage. Start with the requirements and the two 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.