如何从一个表中查询2列并从另一个表中查询另一列
问题描述:
如果有问题,我在ubuntu上使用MySql。如何从一个表中查询2列并从另一个表中查询另一列
我需要从Employes表中查询雇员的姓名,以及他们部门负责人的姓名。
这里是我的表是这样的:
为了使我的问题更清楚,我需要从Employes
查询的名称,并以某种方式从部门表链接的DIR#(20,30和40)来显示与Employes
表中的那些号码相关联的人。
到目前为止,我已经试过此查询:
select ENOM e, DIR d from Employes e, Departements d where e.ENO=d.DIR;
但这仅返回我聘用过的员工和他们的部门数量,而不是他们部门的头名。
答
试试这个:
select emp.employee_name, d.department_head from employee emp,
department d where emp.employee_id = d.employee_id;
答
首先选择聘用过的员工,加盟与部门编号部门表,最后做另外从部门表,员工表连接 - 但这次与DIR(主任)列 - 如:
SELECT E.ENOM
,D.DNOM
,Head.ENOM AS DepartmentHead
FROM Employes E
INNER JOIN Departements D
ON E.DNO = D.DNO
INNER JOIN Employes Head
ON D.DIR = Head.ENO
最好重写与JOIN – StanislavL
那不解决问题Geronimo问,据我了解 –