2017-02-06 48 views
1

我正在尝试从5个不同的表中抽取信息的选择查询,并且在部分中出现错误。我已经尝试了代码的几种变体,没有任何工作。以下是代码和错误。多个内部联接错误

SELECT incident.incidentowner, 
     incident.qualitymember, 
     incident.purchasingmember, 
     incident.additionalmember, 
     incident.customername, 
     incident.customercontact, 
     incident.incidentid, 
     incident.stockcode, 
     incident.incidentdate, 
     incident.stocksupplier, 
     incident.customeraccountno, 
     incident.supplydate, 
     incident.incidentsite, 
     incident.depot, 
     incident.samplesent, 
     incident.quantity, 
     incident.incidentvalue, 
     incident.branchtransfer, 
     incident.hireorsale, 
     incident.quarantined, 
     incident.returnedtosupplier, 
     incident.replacedbysupplier, 
     incident.creditedbysupplier, 
     incident.incidentdescription, 
     containment.containment, 
     containment.containmentdate, 
     rootcause.rootcause, 
     rootcause.rootcausedate, 
     correctiveaction.correctiveaction, 
     correctiveaction.correctiveactiondate, 
     validation.validation, 
     validation.director, 
     validation.validationdate 
FROM Incident 
INNER JOIN containment ON 
     incident.incidentid = containment.incidentid 
INNER JOIN rootcause ON 
     incident.incidentid = rootcause.incidentid 
INNER JOIN correctiveaction ON 
     incident.incidentid = correctiveaction.incidentid 
INNER JOIN validation ON 
     incident.incidentid = validation.incidentid 
WHERE Incident.IncidentID = @incidentid 

这将返回以下错误是需要

Additional information: Syntax error (missing operator) in query expression 
'incident.incidentid = containment.incidentid INNER JOIN rootcause ON 
incident.incidentid = rootcause.incidentid INNER JOIN correctiveaction ON 
incident.incidentid = correctiveaction.incidentid INNER JOIN validation ON  
incident.incidentid = validation.inci'. 
+0

请标记与您正在使用的数据库你的问题。 –

+0

@GordonLinoff新增 – Boneyt

+2

多次连接时不需要额外的括号? – jarlh

回答

1

额外的括号,感谢微软

FROM (((Incident 
INNER JOIN containment ON 
    incident.incidentid = containment.incidentid) 
INNER JOIN rootcause ON 
    incident.incidentid = rootcause.incidentid) 
INNER JOIN correctiveaction ON 
    incident.incidentid = correctiveaction.incidentid) 
INNER JOIN validation ON 
    incident.incidentid = validation.incidentid