2013-03-28 77 views
0

我有這個查詢和頂部內部連接工作正常,但是當我添加第二次連接時,我接收'INNER'附近不正確的語法任何想法爲什麼?內部連接與影響第二次連接的WHERE子句

SELECT Time_ID, 
    Site_Type_ID, 
    SUM (staging.dbo.incoming_measure.ring_time) AS Ring_Time, 
    SUM (staging.dbo.incoming_measure.hold_time) As Hold_Time, 
    SUM (staging.dbo.incoming_measure.talk_time) AS Talk_Time, 
    SUM (staging.dbo.incoming_measure.acw_time) AS ACW_Time 
FROM staging.dbo.incoming_measure 
     INNER JOIN 
    (SELECT Time_ID FROM datamartend.dbo.Time_Dim) TimeID 
     ON TimeID.Time_ID = incoming_measure.StartTime 

     INNER JOIN 
    (SELECT Site_Type_ID, Site_Type_Code FROM datamartend.dbo.Site_Type_dim) SiteID 
     ON SiteID.Site_Type_ID = incoming_measure.DBID 

WHERE StartTimeDate BETWEEN StartTimeDate AND EndTimeDate 
    AND 
WHERE SiteId.Site_type_code = incoming_measure.DBID 

GROUP BY time_id, site_type_id 

回答

4

你必須將你的WHERE下來GROUP BY以上:

WHERE StartTimeDate BETWEEN StartTimeDate AND EndTimeDate 
AND SiteId.Site_type_code = incoming_measure.DBID 

Group by time_id, site_type_id 
+0

因此,我將有4個內總共加入每一個WHERE子句和您的建議把所有的WHERE子句底部? –

+0

@RichardC - 我只在上面的查詢中看到2個內部連接。你只能有一個'WHERE'子句。但是,是的,「WHERE」會在你所有的連接之後進行。 –

+0

對不起,我會想要在每個單獨的內部問題中的where子句這可能嗎?我已經編輯了上面的代碼 –