Dataford
Interview QuestionsInterview GuidesExperiencesMock InterviewsPricing
Get started

Rolling Driver Metrics in SQL

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

Your question is Rolling Driver Metrics in SQL. 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

Geotab fleet analysts use vehicle trip data to monitor changes in driver travel patterns. Write a PostgreSQL query that calculates each driver's 7-day rolling average trip distance.

Requirements

  1. Aggregate trip distance by driver and calendar date before applying the window function.
  2. Build a complete daily date series for the available reporting period so days without trips count as zero distance.
  3. Calculate a seven-calendar-day rolling average for each driver, including the current date and six preceding dates.
  4. Return results only for dates on which the driver has at least one recorded trip.
  5. Treat a NULL trip distance as zero, round the rolling average to two decimal places, and order by driver and date.

Schema

drivers
ColumnTypeDescription
driver_idPKINTUnique driver identifier
driver_nameVARCHAR(100)Driver's name
regionVARCHAR(50)Fleet operating region
trips
ColumnTypeDescription
trip_idPKINTUnique trip identifier
driver_idINTReferences drivers.driver_id
trip_dateDATECalendar date of the trip
distance_kmNUMERIC(10,2)Trip distance in kilometers
Tablesdriverstrips
Your solutionPostgreSQL
You need to log in / sign up to run or submit.
Run a query to see results