作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有两个表 employees 和 departments。
Employees 表有姓名、薪水、department_id。部门表有department_id, department_name
我必须使用子查询显示第二高的员工(实际上是 employees 表中每个员工中唯一一个薪水第二高的员工)和他的 department_name
select
max(e.salary),
d.department_name
from oehr_employees e
join oehr_departments d on(e.department_id = d.department_id)
where e.salary not in(
select max(salary) from oehr_employees
)
group by department_name
试过做这个,但是只显示每个部门第二高的工资。不知道该怎么做:/
尝试寻找答案,但没有得到我想要的。
最佳答案
如果你想使用子查询来做,你可以像下面这样尝试获取薪水第二高的员工和部门的详细信息。
select e.name,e.salary,d.department_id,d.department_name
from
oehr_employees e
join oehr_departments d on e.department_id = d.department_id
WHERE e.salary IN (SELECT Max(salary)
FROM oehr_employees
WHERE salary NOT IN (SELECT Max(salary)
FROM oehr_employees));
关于mysql - 通过子查询找到第二高的薪水,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55206267/
假设我有一个 employee 表,其中有一列 salary。我想在年底时给薪水 > 4000 美元的人加薪 10%,给薪水 4000 THEN 1.1 ELSE 1.05 END 或特定函数如:I
我是一名优秀的程序员,十分优秀!