How I Solved LeetCode Challenge, Calculate Salary

Danielle Torres
2 min readMay 30, 2021

Hello Everyone,

Today I will be reviewing how I solved LeetCode Challenge, Calculate Salary, using SQL.

Objective: Write an SQL query to find the salaries of the employees after applying taxes.

The tax rate is calculated for each company based on the following criteria:

  • 0% If the max salary of any employee in the company is less than 1000$.
  • 24% If the max salary of any employee in the company is in the range [1000, 10000] inclusive.
  • 49% If the max salary of any employee in the company is greater than 10000$.

Return the result table in any order. Round the salary to the nearest integer.

Before coding, I made sure I did my calculations on how the taxes should be deducted. Then I did a basic select statement pulling in company_id, employee_id, employee_name, salary, and a max analytic function to grab the max salary based on the company id.

Next, I coded an outer select that will pull all this information and now my new column max_salary.

I can use a case statement based on the max salary to determine how much taxes should be calculated for each person.

Here is the final code:

select company_id,
employee_id,
employee_name,
round(case when max_salary < 1000 then salary
when max_salary between 1000 and 10000 then salary — (salary * .24)
when max_salary > 10000 then salary — (salary * .49) else salary
end) salary
from
(select company_id,
employee_id,
employee_name,
salary,
max(salary) over (partition by company_id order by salary desc) max_salary
from salaries);

This passed!

Please let me know if this helps you with your challenge and let me know your thoughts. Until next time!

Sign up to discover human stories that deepen your understanding of the world.

Free

Distraction-free reading. No ads.

Organize your knowledge with lists and highlights.

Tell your story. Find your audience.

Membership

Read member-only stories

Support writers you read most

Earn money for your writing

Listen to audio narrations

Read offline with the Medium app

Danielle Torres
Danielle Torres

Written by Danielle Torres

Highly organized & motivated Software Engineer with an application analyst/data analyst background.

No responses yet

Write a response