mysql - 在 2 个表中选择员工及其经理
问题描述
我的数据库中有两张表,一张是员工表,另一张是经理表。我想选择指定经理下的所有员工。
员工表
id name
1 shivam
2 ravi
经理表
id empId managerId
1 1 2
2 2 1
我想要这种类型的结果
id name managername
1 shivam ravi
2 ravi shivam
解决方案
这是我运行代码的链接https://sqltest.net/#686252
如果一个表是这样创建的:
create table employee(
id int auto_increment,
name varchar(20),
primary key (id)
);
create table manager(
id int auto_increment,
empId int,
managerId int,
primary key (id)
);
insert into employee (name) values ('shivam'), ('ravi');
insert into manager (empId,managerId) values (1,2),(2,1);
那么你可以用这个语句得到你想要的结果:
SELECT e.id, e.name, e2.name managername from
employee as e
join manager as m on m.empId = e.id
join employee as e2 on e2.id = m.managerId;
这是我的结果:
id name managername
1 shivam ravi
2 ravi shivam
推荐阅读
- scikit-learn - SciKit-Learn 用什么方法做基本的线性回归?
- algorithm - Programming_question关于动态规划
- webots - 在webots 2019a中,如何使用Supervisor用Python重置物理世界?
- php - 从数据库填充的下拉列表不使用 PHP 记录选定的选项
- ios - 在触发之前删除/避免本地通知
- android - “程序类型已存在:com.google.android.gms.common.api.internal.zzb”如何为 adMob 解决此问题?
- symfony - Symfony 4 - Webpack Encore 引导 css 不在输出中
- java - 如何存储字符串的不同字符
- swift - 带有字符串插值的属性字符串不起作用(swift)
- java - 如何反序列化 EnumMap