Dataford
Interview QuestionsInterview GuidesExperiencesMock InterviewsPricing
Get started

Rolling Metrics with Window Functions

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

Your question is Rolling Metrics with Window Functions. 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

Tesla Energy wants to monitor Supercharger usage by vehicle. Write a PostgreSQL query that calculates rolling energy metrics for completed charging sessions associated with known Tesla vehicles.

Requirements

  1. Exclude cancelled sessions and sessions with missing energy measurements.
  2. Calculate each vehicle's rolling average energy and rolling total energy across the current session and two preceding completed sessions, ordered chronologically.
  3. Return the vehicle identifier, model, session timestamp, session energy, rolling average, and rolling total. Sort by vehicle and session time.

Schema

vehicles
ColumnTypeDescription
vehicle_idPKINTUnique Tesla vehicle identifier
vinVARCHAR(17)Vehicle identification number
modelVARCHAR(40)Tesla vehicle model
delivery_regionVARCHAR(30)Vehicle delivery region
supercharger_sessions
ColumnTypeDescription
session_idPKINTUnique charging session identifier
vehicle_idINTVehicle associated with the session
session_startTIMESTAMPSession start timestamp
energy_kwhDECIMAL(8,2)Energy delivered in kilowatt-hours
session_statusVARCHAR(20)Charging session status
Tablesvehiclessupercharger_sessions
Your solutionPostgreSQL
You need to log in / sign up to run or submit.
Run a query to see results