Dataford
Interview QuestionsInterview GuidesExperiencesMock InterviewsPricing
Get started

SQL: Video and Voice Callers

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

Your question is SQL: Video and Voice Callers. 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

Meta's Product Growth team is analyzing activation in Messenger Calling as part of the AARRR funnel. Calculate the percentage of eligible callers who completed both voice and video calls during January 2025.

Write a PostgreSQL query that treats each caller as one unit. Do not count call events directly, and exclude calls from other Meta surfaces, failed calls, calls outside the period, and events with an unknown call type.

Requirements

  1. Join the user and call event tables and filter to completed Messenger Calling events from 2025-01-01 through 2025-01-31.
  2. Identify whether each caller made at least one valid voice call and at least one valid video call.
  3. Return the number of callers who made both types, the total number of eligible callers, and the percentage, rounded to two decimal places.

Schema

meta_users
ColumnTypeDescription
user_idPKBIGINTMeta user identifier
user_nameVARCHAR(100)Illustrative user label
call_events
ColumnTypeDescription
call_event_idPKBIGINTCall event identifier
caller_idBIGINTUser who initiated the call
product_surfaceVARCHAR(50)Meta product surface where the call occurred
call_typeVARCHAR(20)Voice or video call format
call_statusVARCHAR(20)Call lifecycle status
event_dateDATEDate of the call event
Tablesmeta_userscall_events
Your solutionPostgreSQL
You need to log in / sign up to run or submit.
Run a query to see results