!多表查询的小儿科问题 !(20分)

  • 主题发起人 【小高】
  • 开始时间

【小高】

Unregistered / Unconfirmed
GUEST, unregistred user!
一个表,有如下字段:编号,工程名,项目经理,设计工程师,监理。。。
项目经理,设计工程师,监理对应更一个人员表的员工编号,现在我想用SQL
来查询第一个表的详细信息,要得到编号,工程名和项目经理,设计工程师,
监理的姓名,要怎么写呀??
 
如果是SQL SERVER:
SELECT Proj.ID,
MAX(CASE Emp.ID WHEN P_ID THEN Emp.E_Name ELSE '' END) AS P_Name,
MAX(CASE Emp.ID WHEN D_ID THEN Emp.E_Name ELSE '' END) AS D_Name,
MAX(CASE Emp.ID WHEN M_ID THEN Emp.E_Name ELSE '' END) AS M_Name
FROM Emp,Proj
GROUP BY Proj.ID
 
select Proj.ID, a1.e_name,a2.e_name,a3.e_name
from proj inner join Emp as a1 on a1.id=proj.p_id
inner join Emp as a2 on a2.id = proj.d_id
inner join Emp as a3 on a3.id = proj.m_id
 
建一个试图
再写
 
顶部