gpt4 book ai didi

员工数据库的 SQL 查询

转载 作者:行者123 更新时间:2023-12-04 22:35:32 24 4
gpt4 key购买 nike

我是 SQL 的新手,这学期我正在上数据库类(class)。我有大约 20 个查询要在这个数据库上尝试,其中有两个我无法弄清楚...我想知道这里是否有人能够提供帮助!

这是我已经创建的表格。

create table employee(
EID varchar(20) primary key,
Lastname varchar(20),
Firstname varchar(20),
Midinitial char(1),
gender char(1),
street varchar(20),
city varchar(20)
);

create table works(
EID varchar(20) primary key,
Lastname varchar(20),
Firstname varchar(20),
Midinitial char(1),
company_name varchar(20),
salary numeric(5,0),
foreign key(EID) references employee,
foreign key(company_name) references company
);

create table company(
company_name varchar(20) primary key,
city varchar(20)
);

create table manages(
EID varchar(20) primary key,
Lastname varchar(20),
Firstname varchar(20),
Midinitial char(1),
ManagerLastname varchar(20),
MFirstname varchar(20),
MMidinitial varchar(20),
start_date date,
foreign key (EID) references employee
);

找出为第一银行工作并住在奥马哈的所有经理的薪水。

这是我对这个的看法,我认为它是正确的,但我不想回答这个问题,直到我也能得到第二个......

select distinct salary
from employee, works, manages
where employee.city = 'Omaha'
and works.company_name = 'First Bank'
and manages.managerlastname = employee.Lastname
and employee.EID = works.EID

找出所有员工中工资最高的员工的姓名和公司名称。

最佳答案

我很确定它应该是:

SELECT w.salary FROM works w INNER JOIN employee e ON w.EID = e.EID
WHERE e.city = 'Omaha' AND w.company_name = 'First Bank' AND EXISTS
( SELECT * FROM managers m WHERE m.EID = w.EID);

第二个:

SELECT e.Firstname, e.Lastname, w.company_name FROM employee e INNER JOIN
works w ON e.EID = w.EID ORDER BY w.salary DESC LIMIT 1;

关于员工数据库的 SQL 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12362367/

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