Dataford
Interview QuestionsInterview GuidesExperiencesMock InterviewsPricing
Get started
SQL Top Regions by Downtime
00:00
5 left

SQL Top Regions by Downtime

MediumSQL · PostgreSQL

Problem

Write a SQL query to find the top 3 regions by network downtime, partitioned by month.

Use completed downtime events only. Calculate each event's duration in minutes and assign it to the month in which it started. Return the three highest-downtime regions for each month, with deterministic ordering for ties.

Output

  1. One row per selected region and month
  2. Columns: month, region_name, total_downtime_minutes, and region_rank
  3. Include only ranks 1 through 3, ordered by month ascending, rank ascending, and region name ascending

Schema

regions
ColumnTypeDescription
region_idPKINTUnique region identifier
region_nameVARCHAR(100)Region name
country_codeVARCHAR(2)Two-letter country code
network_sites
ColumnTypeDescription
site_idPKINTUnique network site identifier
region_idINTRegion containing the site
site_codeVARCHAR(30)Operational site code
technologyVARCHAR(20)Primary radio technology at the site
downtime_events
ColumnTypeDescription
event_idPKINTUnique downtime event identifier
site_idINTSite affected by the event
started_atTIMESTAMPDowntime start timestamp
ended_atTIMESTAMPDowntime end timestamp, null for ongoing events
causeVARCHAR(100)Reported cause of downtime
Tablesregionsnetwork_sitesdowntime_events
Interviewer

Your question is SQL Top Regions by Downtime. 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.