Dataford
Interview QuestionsInterview GuidesExperiencesMock InterviewsPricing
Get started

SQL Rolling Average Window

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

Your question is SQL Rolling Average Window. Start with the requirements and the two 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

Business Context

The IRS Submission Processing program monitors how quickly processing centers complete tax returns. Analysts need a monthly view and a smoothed three-month trend for each center.

Task

Write a PostgreSQL query to calculate the monthly average processing time and the three-month rolling average for each IRS processing center.

Requirements

  1. Include only returns with status = 'Processed' submitted from January through May 2025.
  2. Aggregate processing time by processing center and calendar month.
  3. Calculate a rolling average using the current month and up to the two preceding months within each center.
  4. Return results ordered by center name and month.

Schema

irs_processing_centers
ColumnTypeDescription
center_idPKINTEGERUnique processing center identifier
center_nameVARCHAR(100)IRS processing center name
state_codeCHAR(2)State abbreviation for the center
tax_returns
ColumnTypeDescription
return_idPKINTEGERUnique tax return identifier
center_idINTEGERProcessing center assigned to the return
submitted_atDATEDate the return was submitted
statusVARCHAR(20)Current processing status
processing_daysINTEGERElapsed days required to process the return
Tablesirs_processing_centerstax_returns
Your solutionPostgreSQL
You need to log in / sign up to run or submit.
Run a query to see results