Dataford
Interview QuestionsInterview GuidesExperiencesMock InterviewsPricing
Get started

Top Departments by Enrollment

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

Your question is Top Departments by Enrollment. Start with the requirements and the three 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

Columbia University wants to compare department enrollment levels across academic semesters. Write a PostgreSQL query that identifies the top three departments by average enrollment per semester.

Requirements

  1. Join departments, courses, and enrollments to associate students with departments.
  2. Count enrollments for each department and semester, excluding rows with a missing semester.
  3. Calculate each department's average semester enrollment and rank departments with RANK().
  4. Return departments with ranks 1 through 3, including ties, ordered by rank and department name.

Schema

departments
ColumnTypeDescription
department_idPKINTUnique department identifier
department_nameVARCHAR(100)Columbia University department name
courses
ColumnTypeDescription
course_idPKINTUnique course identifier
department_idINTDepartment that offers the course
course_titleVARCHAR(150)Course title
enrollments
ColumnTypeDescription
enrollment_idPKINTUnique enrollment identifier
course_idINTCourse associated with the enrollment
student_nameVARCHAR(100)Name of the enrolled student
semesterVARCHAR(20)Academic semester for the enrollment
Tablesdepartmentscoursesenrollments
Your solutionPostgreSQL
You need to log in / sign up to run or submit.
Run a query to see results