鉴于此架构:

Professor_ID
Professor_Name
Dept_ID
Salary


Dept_ID
Dept_Name


一所大学使用2个数据表(教授和系)来存储有关其教授以及与每个专业相关的系的数据。

编写查询以打印每个教授的姓名和工资:


教授不在艺术系工作
教授的薪水高于艺术系任何教授的最低薪水


样本输出:

Joe Smith  22066

Ken Doe 13411

Eliott Scott 19404

Scott Thompson 48299


我只是尝试了类似的方法,但是没有用:

SELECT Professor_ID, Professor_Name, Dept_ID, Salary
FROM Professors p
INNER JOIN Departments d
ON p.Dept_ID = d.Dept_ID
WHERE Dept_Name != 'Art'and Salary > (SELECT MIN(Salary))
   FROM Professors p
   INNER JOIN Departments d
   ON p.Dept_ID = d.Dept_ID
   WHERE Dept_Name = 'Arts and Humanities')

最佳答案

这会给你

最终查询中标记为--- 1的部分将为您提供艺术系以外教授的所有薪水
最终查询中标记为--- 2的部分将比较第一部分中所选教授的薪水,并使用以下查询将其与艺术教授中薪水最低的薪水进行比较:

select min(Salary) from From Professors p inner join Departments d on p.Dept_ID = d.Dept_ID  where Dept_Name = 'Art'


最终查询

--- 111
    select
    Professor_ID,
    Professor_Name,
    Dept_ID,
    Salary
    From Professors p  inner join Departments d on p.Dept_ID = d.Dept_ID
    where Dept_Name != 'Art'
--- 111
--- 222
    and Salary > (select min(Salary) From Professors p inner join Departments d on p.Dept_ID = d.Dept_ID  where Dept_Name = 'Art')
--- 222

关于mysql - 查询教授和薪水高于特定部门的最低工资,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/59685780/

10-11 03:33