gpt4 book ai didi

MySQL查询以查找员工薪水高于任何经理

转载 作者:太空宇宙 更新时间:2023-11-03 11:39:48 24 4
gpt4 key购买 nike

所以,我有这个模式:

Emp(eid: integer,ename: string,age: integer,salary: real)
Works(eid:integer,did: integer,pct_time: integer)
Dept(did:integer,budget: real,managerid:integer)

我想返回工资高于任何经理(无论其部门)的员工。

select E.ename, D.did, E.eid
from Emp E
join Works W ON E.eid = W.eid
join Dept D ON D.did = W.did
where E.salary > (select E2.salary from Emp E2, Dept D2
where E2.eid = D2.managerid)

但是子查询语句返回了不止一行。如何比较 2 个表中的多行以获得正确的结果?分组应该有效,对吗?

最佳答案

您的要求可以转化为找出一名员工,该员工的薪水低于他的薪水。你可以试试这个。

 SELECT e.*
FROM emp e
WHERE EXISTS (SELECT 1
                       FROM emp e2 INNER JOIN
                            dept d2
                           ON e2.eid = d2.managerid
                      WHERE  e2.salary < e.salary);

关于MySQL查询以查找员工薪水高于任何经理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42889079/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com