我有两个相关表:与3列合同:ContractsID,AreaManager和AreaLeader。然后我有雇员表2列:EmployeesID,EmployeeName。 EmployeeID是AreaManager和AreaLeader的外键。我试图创建一个SELECT查询来回显ContractID,区域经理的名称和区域负责人的名字。如何从相关表的同一字段回显值
这就是我的;
$query = "SELECT Contracts.ContractsID, Contracts.AreaLeader, Contracts.AreaManager, Employees.EmployeeName FROM Contracts
INNER JOIN Employees ON Employees.EmployeeID = Contracts.AreaManager
INNER JOIN Employees ON Employees.EmployeeID = Contracts.AreaLeader
但是,查询不起作用。我相信我应该使用表别名,但我有点为此苦苦挣扎。
我试过,但没有奏效:
$query = "SELECT c.ContractsID, m.Employees.EmployeeName as ManagerName, l.Employees.EmployeeName as LeaderName
FROM c.Contracts
JOIN Employees m ON m.EmployeeID = c.AreaManager
JOIN Employees l ON l.EmployeeID = c.AreaLeader
任何帮助将不胜感激!
提供一些示例数据和预期结果。 – 2015-04-04 20:26:12
您的第二个查询对我来说看起来很好,除了'm.Employees.EmployeeName'和'l.Employees.EmployeeName',它们应该分别是'm.EmployeeName'和'l.EmployeeName'。 – denat 2015-04-04 20:31:00
你是否直接在mysql上运行你的查询?它是否返回结果?你是如何确定查询不起作用的? – 2015-04-04 21:10:21