一、题目描述

表: 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】部门工资最高的员工相关推荐

  1. leetcode184. 部门工资最高的员工(SQL) 连接+嵌套查询

    Employee 表包含所有员工信息,每个员工有其对应的 Id, salary 和 department Id. +----+-------+--------+--------------+ | Id ...

  2. 【每日SQL打卡】DAY 1丨部门工资最高的员工【难度中等】

    活动介绍: 「数据仓库技术交流群」已经正式启动每日SQL打卡,帮助大家扎实基础,努力工作之余,别忘了自我提升. 欢迎报名和邀请小伙伴参与,一个人可能走得很快,但一群人会走得很远. 活动流程: 1.每天 ...

  3. 编写一个 SQL 查询,找出每个部门工资最高的员工。

    Employee 表包含所有员工信息,每个员工有其对应的 Id, salary 和 department Id.+----+-------+--------+--------------+ | Id ...

  4. 2022-12-03:部门工资最高的员工。以下数据Max 和 Jim 在 IT 部门的工资都是最高的,Henry 在销售部的工资最高。sql语句如何写? 输出结果如下: department emp

    2022-12-03:部门工资最高的员工.以下数据Max 和 Jim 在 IT 部门的工资都是最高的,Henry 在销售部的工资最高.sql语句如何写? 输出结果如下: department empl ...

  5. 部门工资最高的员工(SQL)

    挺无聊的. 基于 MS SQL 题目是这样的: Employee 表包含所有员工信息,每个员工有其对应的 Id, salary 和 department Id. +----+-------+----- ...

  6. LeetCode For SQL 184. 部门工资最高的员工 (分组 from嵌套)

    184. 部门工资最高的员工 # Write your MySQL query statement below-- 先找出每个部门最高薪资,显示出部门id.部门名称和薪资 -- 然后再通过这个新表,根 ...

  7. SQL习题“部门工资最高的员工”

    "部门工资最高的员工" 思路: 根据DepartmentId分组,筛选出各部门的最高工资. select DepartmentId,max(Salary) from Employe ...

  8. MySQL_项目7: 各部门工资最高的员工(难度:中等)

    项目七: 各部门工资最高的员工(难度:中等) 创建Employee 表,包含所有员工信息,每个员工有其对应的 Id, salary 和 department Id. +----+-------+--- ...

  9. Leetcode-184. 部门工资最高的员工

    题目链接: Leetcode-184 Employee 表包含所有员工信息,每个员工有其对应的 Id, salary 和 department Id. +----+-------+--------+- ...

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

    文章目录 1. 题目 2. 解题 1. 题目 Employee 表包含所有员工信息,每个员工有其对应的 Id, salary 和 department Id. +----+-------+------ ...

最新文章

  1. 分享一下字符串匹配BM算法学习心得。
  2. 两个C++毫秒级定时器
  3. vs2013编译osg缺少mfc120d.lib
  4. zookeeper一键启动关闭JAVA_HOME在PATH中找不到报错踩坑记
  5. go 查看全局安装了哪些包_如何用 GVM 管理 Go 项目
  6. PyTorch 1.0 中文文档:torchvision.transforms
  7. 一些特殊的电脑快捷键
  8. Babel下的ES6兼容性与规范
  9. DPDK收发包流程分析(一)
  10. Linux下套接字详解(十)---epoll模式下的IO多路复用服务器
  11. 当杭州为人称道的美丽遇见了华为云!
  12. win10升级助手_不用QQ也能电脑远程,win10这功能太良心了!真后悔晚发现
  13. TCP/IP网络编程 学习笔记_9 --域名系统(DNS)
  14. kafka的全面知识点
  15. 电影《不夜城》的主题曲:金城武、山本未来主演
  16. platform.js
  17. openwrt 编程器固件制作方法
  18. 服务器每秒钟执行命令数量是什么_日常学习笔记.md
  19. 用业绩倒逼技术发展,小i机器人朱频频:AI价值不仅在于IPO
  20. 虚拟机中安装win10系统

热门文章

  1. SD-WAN重构分支网络 不仅仅是节约成本
  2. 读TIJ -2 一切都是对象
  3. 毕业后,他百万年薪,我十万年薪,有时候选择比努力更重要
  4. mtcnn人脸检测python_基于MTCNN/TensorFlow实现人脸检测
  5. 【算法自由之路】二叉树的基本算法
  6. 【IT项目管理】第8章 协调项目人力资源
  7. 射极跟随器电路(共集电极放大电路)设计
  8. Android自定义HorizontalScrollView实现侧滑菜单效果
  9. 面试题24——C++的引用和C语言的指针有什么区别
  10. 「恐惧型广告」有效爬入你的潜意识,网络广告新方向?