繁体   English   中英

连接相同的mySql表

[英]Joining same mySql table

-EmployeeId int(11) PK 
-LastName varchar(20) 
-FirstName varchar(20) 
-ReportsTo int(11) 
-Address varchar(70) 
-City varchar(40) 
-PostalCode varchar(10) 

查找与主管一样生活在相同城市和邮政编码中的所有雇员(姓,名)。

在过去的几个小时里,我一直在尝试解决此问题,但是我无法解决这个问题。

SELECT *
FROM chinook.employee
WHERE ReportsTo In
    (SELECT EmployeeId From chinook.employee);

我正在考虑某种类型的加入以使这项工作有效。 ReportsTo ID与EmployeeID相关联。 我相信您应该在该列上连接同一表,但不确定如何使用它。

MySql数据库的图片

将表本身与其连接是正确的路径。

您可以加入t1.reportsTo = t2.employeeID ,然后将t1.city = t2.city and t1.postalCode = t2.postalCode用作条件

select  t1.LastName, t1.FirtsName
from    chinook.employee as t1
join    chinook.employee as t2
  on    t1.reportsTo = t2.employeeID
where   t1.city = t2.city and t1.postalCode = t2.postalCode

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM