查询A表,A表查询我没问题,现在问题是:A表中有三个字段是另外三个表中的编号,我想要他们的名称,但是名称是在那三个表中。我本想通过下面这条语句实现,未料出错了……SELECT e.name, d.name as department, c.name as company, s.name as supplier FROM employee e (INNER JOIN depart d ON d.id = e.departID, INNER JOIN comp c ON c.id = e.companyID, INNER JOIN supp s ON s.id = e.supplierID)
表tbl_ISB: 主键ISB_ID 外键: Customer_ID,Node_ID ,Owner_ID
tbl_Owner
tbl_Customer
tbl_Node
你把列名和表名换一下就行了
SELECT dbo.tbl_ISB.ISB_ID, dbo.tbl_Owner.Owner_Name,
dbo.tbl_Customer.Customer_Name1, dbo.tbl_Node.Node_Name
FROM dbo.tbl_ISB LEFT OUTER JOIN
dbo.tbl_Customer ON
dbo.tbl_ISB.Customer_ID = dbo.tbl_Customer.Customer_ID LEFT OUTER JOIN
dbo.tbl_Node ON dbo.tbl_ISB.Node_ID = dbo.tbl_Node.Node_ID LEFT OUTER JOIN
dbo.tbl_Owner ON dbo.tbl_ISB.Owner_ID = dbo.tbl_Owner.Owner_ID
SELECT tbl_ISB.ISB_ID,
tbl_Owner.Owner_Name,
tbl_Customer.Customer_Name1,
tbl_Node.Node_Name
FROM tbl_ISB
LEFT OUTER JOIN
dbo.tbl_Customer
ON
dbo.tbl_ISB.Customer_ID = dbo.tbl_Customer.Customer_ID
LEFT OUTER JOIN
dbo.tbl_Node
ON
dbo.tbl_ISB.Node_ID = dbo.tbl_Node.Node_ID
LEFT OUTER JOIN
dbo.tbl_Owner
ON
dbo.tbl_ISB.Owner_ID = dbo.tbl_Owner.Owner_ID
FROM employee e , depart d , comp c, supp s
where d.id = e.departID and c.id = e.companyID and s.id = e.supplierID
select * from e inner join d on e.*=d.* inner join c on e.*=c.* inner join s on e.*=s.*
具体*号请用相应的字段代替。