Dataford
Interview QuestionsInterview GuidesExperiencesMock InterviewsPricing
Get started
Top 10 Users by Usage SQL
00:00
5 left

Top 10 Users by Usage SQL

MediumSQL · PostgreSQL

Problem

Write a SQL query to join three tables and identify the top 10 users by usage volume. Use the supplied tables and aggregate valid usage records for each user.

Output

  1. Return one row per user with user_id, user_name, and total_usage.
  2. Include only the 10 highest-volume users, ordered by total_usage descending and user_id ascending to break ties.

Schema

users
ColumnTypeDescription
user_idPKINTUnique user identifier
user_nameVARCHAR(100)User display name
user_statusVARCHAR(20)Current account status
usage_records
ColumnTypeDescription
usage_idPKINTUnique usage record identifier
user_idINTUser associated with the usage
service_idINTService associated with the usage
usage_unitsINTMeasured usage volume
usage_typeVARCHAR(30)Usage measurement category
services
ColumnTypeDescription
service_idPKINTUnique service identifier
service_nameVARCHAR(100)Service name
service_statusVARCHAR(20)Current service status
Tablesusersusage_recordsservices
Interviewer

Your question is Top 10 Users by Usage SQL. 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.