Project Employees I — LeetCode 1075 Python Solution

EasyDatabase
Problem
#1075
Reading time
2 min

Table schema

SQL
Table: Project +-------------+---------+ | Column Name | Type | +-------------+---------+ | project_id | int | | employee_id | int | +-------------+---------+ (project_id, employee_id) is the primary key of this table. employee_id is a foreign key to Employee table.

Example

SQL
+-------------+---------+
| Column Name | Type    |
+-------------+---------+
| project_id  | int     |
| employee_id | int     |
+-------------+---------+
(project_id, employee_id) is the primary key of this table.
employee_id is a foreign key to Employee table.
Each row of this table indicates that the employee with employee_id is working on the project with project_id.

Python solution

Python
import duckdb
import pandas as pd

def solution(project: pd.DataFrame, employee: pd.DataFrame) -> pd.DataFrame:
    con = duckdb.connect()
    con.register("Project", project)
    con.register("Employee", employee)
    return con.execute("""SELECT project_id, ROUND(AVG(experience_years), 2) AS average_years
FROM
    Project
    JOIN Employee USING (employee_id)
GROUP BY 1;""").df()

Complexity

MeasureComplexity
TimeO(n log n) (typical)
SpaceO(n) auxiliary

Related problems

Frequently asked questions

How hard is LeetCode 1075. Project Employees I?
LeetCode 1075. Project Employees I is rated Easy on LeetCode.
What topics does LeetCode 1075. Project Employees I cover?
LeetCode 1075. Project Employees I is tagged Database on LeetCode.

Stuck on problems like this in a live interview?

Stealth Interview is a desktop app for macOS and Windows. It reads the problem off your screen and returns a working solution with a step-by-step explanation and its time and space complexity — invisible to screen sharing.

Get Stealth Interview