# Department Highest Salary

## Desicription

The `Employee` table holds all employees. Every employee has an Id, a salary, and there is also a column for the department Id.

```+----+-------+--------+--------------+
| Id | Name  | Salary | DepartmentId |
+----+-------+--------+--------------+
| 1  | Joe   | 70000  | 1            |
| 2  | Henry | 80000  | 2            |
| 3  | Sam   | 60000  | 2            |
| 4  | Max   | 90000  | 1            |
+----+-------+--------+--------------+```

The `Department` table holds all departments of the company.

```+----+----------+
| Id | Name     |
+----+----------+
| 1  | IT       |
| 2  | Sales    |
+----+----------+```

Write a SQL query to find employees who have the highest salary in each of the departments. For the above tables, Max has the highest salary in the IT department and Henry has the highest salary in the Sales department.

```+------------+----------+--------+
| Department | Employee | Salary |
+------------+----------+--------+
| IT         | Max      | 90000  |
| Sales      | Henry    | 80000  |
+------------+----------+--------+```

## Solution

```SELECT
D.Name AS Department,
E.Name AS Employee,
E.Salary AS Salary
FROM
Department D,
Employee E,
(SELECT DepartmentId AS Id, max(Salary) AS Salary FROM Employee GROUP BY DepartmentId) T
WHERE
E.DepartmentId = D.Id AND
E.DepartmentId = T.Id AND
E.Salary = T.Salary```

0 条评论

• ### 【leetcode两题选手】MySQL类题目（五）

做完这些题，我觉得我得去系统的学一下SQL语句了。 有些题目，明明有自己的想法，却奈何格式写不出来啊，烦。

• ### LeetCode MySQL 184. 部门工资最高的员工

Employee 表包含所有员工信息，每个员工有其对应的 Id, salary 和 department Id。

• ### ​LeetCode刷题实战184：部门工资最高的员工

算法的重要性，我就不多说了吧，想去大厂，就必须要经过基础知识和业务逻辑面试+算法面试。所以，为了提高大家的算法能力，这个公众号后续每天带大家做一道算法题，题目就...

• ### MySQL题集

编写一个 SQL 查询，满足条件：无论 person 是否有地址信息，都需要基于上述两表提供 person 的以下信息：

• ### LeetCode 0177 - Nth Highest Salary

Write a SQL query to get the nth highest salary from the Employee table.

• ### LeetCode 0176 - Second Highest Salary

Write a SQL query to get the second highest salary from the Employee table.

• ### LeetCode MySQL 185. 部门工资前三高的所有员工（dense_rank）

Employee 表包含所有员工信息，每个员工有其对应的工号 Id，姓名 Name，工资 Salary 和部门编号 DepartmentId 。

• ### ​LeetCode刷题实战185：部门工资前三高的所有员工

算法的重要性，我就不多说了吧，想去大厂，就必须要经过基础知识和业务逻辑面试+算法面试。所以，为了提高大家的算法能力，这个公众号后续每天带大家做一道算法题，题目就...

• ### Leetcode-sql-four

本文中主要是介绍LeetCode中关于SQL的练习题，从易到难，循序渐进。文中会介绍题目和提供尽可能多的解答方案。从本文开始属于\color{red}{中等}难...

• ### 【leetcode两题选手】MySQL类题目（一）

编写一个 SQL 查询，满足条件：无论 person 是否有地址信息，都需要基于上述两表提供 person 的以下信息：

• ### 【SQL刷题系列】：leetcode177 Nth Highest Salary

【SQL刷题系列】：leetcode183 Customers Who Never Order

• ### MySQL 排序、分页查询、聚合查询

可以通过LIMIT <M> OFFSET <N>子句实现。每次显示最多 M 条，从第 N 条记录开始算

• ### 数据科学家常见的5个SQL面试问题

在任何以数据为中心的工作中，对SQL有深刻的理解都是成功的关键，尽管这不是工作中最有趣的部分。事实上，除了SELECT FROM WHERE GROUP BY ...

• ### LeetCode-SQL(一)

表1: Person +-------------+---------+ | 列名 | 类型 | +-------------+---...

• ### 【leetcode两题选手】MySQL类题目（二）

编写一个 SQL 查询，获取 Employee 表中第 n 高的薪水（Salary）。

• ### LeetCode数据库题目集合

编写一个 SQL 查询，满足条件：无论 person 是否有地址信息，都需要基于上述两表提供 person 的以下信息：

• ### 自然语言处理学术速递[6.30]

【1】 Hate speech detection using static BERT embeddings 标题：基于静电BERT嵌入的仇恨语音检测

### Reck Zhang

TencentGame Developer

Tencent · Game Developer (已认证)