Dataford
Interview QuestionsInterview GuidesExperiencesMock InterviewsPricing
Get started

Year-Over-Year Carrier Growth

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

Your question is Year-Over-Year Carrier Growth. 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

Convoy's Carrier Dashboard tracks how quickly new carriers join the platform. Write a PostgreSQL query that calculates annual carrier sign-ups and their year-over-year growth rate.

Requirements

  1. Count distinct eligible carriers by the calendar year of their first signup event.
  2. Include only carriers whose account status is active or pending.
  3. Return the signup year, current signup count, prior-year signup count, and growth rate as a percentage rounded to two decimal places. Return NULL for the first year or when the prior-year count is zero.
  4. Order the results chronologically.

Schema

carrier_accounts
ColumnTypeDescription
carrier_idPKINTUnique carrier identifier
account_statusVARCHAR(20)Current carrier account status
created_atDATEDate the carrier account was created
carrier_signups
ColumnTypeDescription
signup_idPKINTUnique signup event identifier
carrier_idINTCarrier associated with the signup
signed_up_atTIMESTAMPTimestamp of the signup event
acquisition_channelVARCHAR(30)Signup acquisition source
Tablescarrier_accountscarrier_signups
Your solutionPostgreSQL
You need to log in / sign up to run or submit.
Run a query to see results