【SQL】部门工资最高的员工
一、题目描述
表: Employee
这里是引用
±-------------±--------+
| 列名 | 类型 |
±-------------±--------+
| id | int |
| name | varchar |
| salary | int |
| departmentId | int |
±-------------±--------+
id是此表的主键列。
departmentId是Department表中ID的外键。
此表的每一行都表示员工的ID、姓名和工资。它还包含他们所在部门的ID。
输入:
Employee 表:
±—±------±-------±-------------+
| id | name | salary | departmentId |
±—±------±-------±-------------+
| 1 | Joe | 70000 | 1 |
| 2 | Jim | 90000 | 1 |
| 3 | Henry | 80000 | 2 |
| 4 | Sam | 60000 | 2 |
| 5 | Max | 90000 | 1 |
±—±------±-------±-------------+
Department 表:
±—±------+
| id | name |
±—±------+
| 1 | IT |
| 2 | Sales |
±—±------+
输出:
±-----------±---------±-------+
| Department | Employee | Salary |
±-----------±---------±-------+
| IT | Jim | 90000 |
| Sales | Henry | 80000 |
| IT | Max | 90000 |
±-----------±---------±-------+
解释:Max 和 Jim 在 IT 部门的工资都是最高的,Henry 在销售部的工资最高。
二、代码题解
# Write your MySQL query statement below
selectDepartment.name as 'Department',Employee.name as 'Employee',Employee.salary as Salary
fromEmployee join Department on Employee.departmentId = Department.id
where (Employee.departmentId , Employee.salary) in( select departmentId,max(salary)from Employeegroup by departmentId );
这样的代码也可以,但是针对薪资同样高的人,名字会不同,但是group by会自动帮我们去重一个,而且这样做也会有问题,因为对departmentId 分的组,但是我们字段却有name,这个name的数量和分组的数量可不一定相同,所以会出bug。
select departmentId,name,max(salary)from Employeegroup by departmentId
【SQL】部门工资最高的员工相关推荐
- leetcode184. 部门工资最高的员工(SQL) 连接+嵌套查询
Employee 表包含所有员工信息,每个员工有其对应的 Id, salary 和 department Id. +----+-------+--------+--------------+ | Id ...
- 【每日SQL打卡】DAY 1丨部门工资最高的员工【难度中等】
活动介绍: 「数据仓库技术交流群」已经正式启动每日SQL打卡,帮助大家扎实基础,努力工作之余,别忘了自我提升. 欢迎报名和邀请小伙伴参与,一个人可能走得很快,但一群人会走得很远. 活动流程: 1.每天 ...
- 编写一个 SQL 查询,找出每个部门工资最高的员工。
Employee 表包含所有员工信息,每个员工有其对应的 Id, salary 和 department Id.+----+-------+--------+--------------+ | Id ...
- 2022-12-03:部门工资最高的员工。以下数据Max 和 Jim 在 IT 部门的工资都是最高的,Henry 在销售部的工资最高。sql语句如何写? 输出结果如下: department emp
2022-12-03:部门工资最高的员工.以下数据Max 和 Jim 在 IT 部门的工资都是最高的,Henry 在销售部的工资最高.sql语句如何写? 输出结果如下: department empl ...
- 部门工资最高的员工(SQL)
挺无聊的. 基于 MS SQL 题目是这样的: Employee 表包含所有员工信息,每个员工有其对应的 Id, salary 和 department Id. +----+-------+----- ...
- LeetCode For SQL 184. 部门工资最高的员工 (分组 from嵌套)
184. 部门工资最高的员工 # Write your MySQL query statement below-- 先找出每个部门最高薪资,显示出部门id.部门名称和薪资 -- 然后再通过这个新表,根 ...
- SQL习题“部门工资最高的员工”
"部门工资最高的员工" 思路: 根据DepartmentId分组,筛选出各部门的最高工资. select DepartmentId,max(Salary) from Employe ...
- MySQL_项目7: 各部门工资最高的员工(难度:中等)
项目七: 各部门工资最高的员工(难度:中等) 创建Employee 表,包含所有员工信息,每个员工有其对应的 Id, salary 和 department Id. +----+-------+--- ...
- Leetcode-184. 部门工资最高的员工
题目链接: Leetcode-184 Employee 表包含所有员工信息,每个员工有其对应的 Id, salary 和 department Id. +----+-------+--------+- ...
- LeetCode MySQL 184. 部门工资最高的员工
文章目录 1. 题目 2. 解题 1. 题目 Employee 表包含所有员工信息,每个员工有其对应的 Id, salary 和 department Id. +----+-------+------ ...
最新文章
- 分享一下字符串匹配BM算法学习心得。
- 两个C++毫秒级定时器
- vs2013编译osg缺少mfc120d.lib
- zookeeper一键启动关闭JAVA_HOME在PATH中找不到报错踩坑记
- go 查看全局安装了哪些包_如何用 GVM 管理 Go 项目
- PyTorch 1.0 中文文档:torchvision.transforms
- 一些特殊的电脑快捷键
- Babel下的ES6兼容性与规范
- DPDK收发包流程分析(一)
- Linux下套接字详解(十)---epoll模式下的IO多路复用服务器
- 当杭州为人称道的美丽遇见了华为云!
- win10升级助手_不用QQ也能电脑远程,win10这功能太良心了!真后悔晚发现
- TCP/IP网络编程 学习笔记_9 --域名系统(DNS)
- kafka的全面知识点
- 电影《不夜城》的主题曲:金城武、山本未来主演
- platform.js
- openwrt 编程器固件制作方法
- 服务器每秒钟执行命令数量是什么_日常学习笔记.md
- 用业绩倒逼技术发展,小i机器人朱频频:AI价值不仅在于IPO
- 虚拟机中安装win10系统