2013-04-03 61 views
1

在使用下面的查詢(基於Microsoft SQL格式的指南,因爲我是新來的訪問,雖然與SQL經歷)我得到一個錯誤:語法錯誤使用嵌套內部時,在Access加盟查詢

SELECT SW.USGS_NO, Q.SampleDate 
FROM SW_PROPERTIES SW 
Inner Join (Locations L 
Inner join [(]Sample_Point P [ 
Inner Join [(]T_TestEvents E [ 
Inner Join [(]T_WQData Q)] 
on E.TestEvent=Q.TestEvent)] 
on P.SamplePnt=E.SamplePnt)] 
on L.LocationPnt=P.LocationPnt) 
on SW.SiteID=L.LocationPnt 

錯誤很簡單:

「FROM子句中的語法錯誤」。

中關閉錯誤,重命名,或最終,「P」後「[(] SamplePoint P [」突出顯示。

我知道表之間的關係是有效的,我只是想從數據最高和最低的表。我缺少什麼?

+0

你所說的「從數據最高和最低表」意思? –

+0

如果我深入瞭解表格,我只是在真正尋找來自第一個和最後一個的數據。不是來自我必須鏈接的表格之間的表格。 – Mike

回答

0

什麼是方括號的意義是什麼?

我刪除它們,因爲你僅僅使用INNER JOIN,你甚至不需要括號。試試這個:

SELECT 
    SW.USGS_NO, 
    Q.SampleDate 

FROM SW_PROPERTIES SW 
Inner Join Locations L 
    on SW.SiteID=L.LocationPnt 
Inner join Sample_Point P 
    on L.LocationPnt=P.LocationPnt 
Inner Join T_TestEvents E 
    on P.SamplePnt=E.SamplePnt 
Inner Join T_WQData Q 
    on E.TestEvent=Q.TestEvent 
+0

是的,我不得不在微軟網站上查找他們的SQL語法的原因是我以這種方式得到了錯誤。這就是我最初設置的方式,但是這會導致操作員錯誤。顯然,MS喜歡所有的括號和括號。從開放式托盤上取下托架。給出一個Join語法錯誤,突出顯示最後兩個內部聯接。刪除所有括號似乎運行,但要求E.TestEvent的參數值。我不知道它在哪裏獲取命令來詢問參數... – Mike

+0

訪問將始終提示輸入無法識別的字段名稱的參數。我發現Access通常需要多個連接的括號。 – grahamj42

1

試試這個

SELECT SW.USGS_NO, Q.SampleDate 
FROM ((([SW_PROPERTIES] SW 
Inner Join ([Locations] L 
Inner join [Sample_Point] P 
Inner Join [T_TestEvents] E 
Inner Join [T_WQData] Q 
on E.TestEvent=Q.TestEvent) 
on P.SamplePnt=E.SamplePnt) 
on L.LocationPnt=P.LocationPnt) 
on SW.SiteID=L.LocationPnt