Join 在一个表中联接多个FK值
我正在编写一些access查询,我想获得有关特定查询的帮助。我对SQL还是很陌生。以下是我的表格的简化版本:Join 在一个表中联接多个FK值,join,foreign-keys,Join,Foreign Keys,我正在编写一些access查询,我想获得有关特定查询的帮助。我对SQL还是很陌生。以下是我的表格的简化版本: Project Details --------------- projectID (PK) projectStartDate projectEndDate projectName managerID (FK) leadID (FK) coleadID (FK) Employee -------- empID (PK) empName managerID、leadID和colead
Project Details
---------------
projectID (PK)
projectStartDate
projectEndDate
projectName
managerID (FK)
leadID (FK)
coleadID (FK)
Employee
--------
empID (PK)
empName
managerID、leadID和coleadID都对应于empID。我想检索Project Details表,但将ID替换为员工的姓名。我已经成功地使用内部联接一次为一个FK执行此操作,但无法找到一种方法来为所有角色完成此操作
如果能够将结果上的属性名称更改为managerName、leadName和coleadName,也会很好
谢谢 同样,您可能只需要一个ID:
SELECT pd.*
, emp_m.empName ManagerName
, emp_l.empName LeadName
, emp_c.empName ColeadName
FROM ProjectDetails pd
, Employee emp_m
, Employee emp_l
, Employee emp_c
WHERE pd.managerID = emp_m.empID(+)
AND pd.leadID = emp_l.empID(+)
AND pd.coleadID = emp_c.empID(+)
(+)
用于外部联接,因此它将选择ProjectDetails
表的所有记录,无论它是否可以匹配经理、领导或同事。Hmm,我一定是做错了什么。在我运行这个之后,我只得到一个项目返回。好的,我在我的答案中将它们改为左连接。这应该能正常工作。