2009-06-05 102 views
0

有人可以幫我一個查詢嗎?在Microsoft SQL Server中,我有以下查詢,它執行罰款:微軟Access SQL查詢

SELECT * FROM ControlPoint 
INNER JOIN Project ON ControlPoint.ProjectID = Project.ProjectID 
INNER JOIN Site ON Site.SiteID = Project.SiteID 
WHERE Project.ProjectName LIKE '%Flood%' 

我的問題是,當我嘗試在Microsoft Access中執行此,它給了我某種語法錯誤。自從我使用Access以來,它一直是永恆的,但如果我沒有記錯的話,我認爲這些連接需要放在括號內。任何幫助將是有用的!

回答

7

您將需要另外一些括號改變外卡:

SELECT * FROM (ControlPoint 
INNER JOIN Project ON ControlPoint.ProjectID = Project.ProjectID) 
INNER JOIN Site ON Site.SiteID = Project.SiteID 
WHERE Project.ProjectName LIKE '*Flood*' 

注意,星號在訪問查詢窗口,並與DAO使用時,百分比是與ADO一起使用。

+0

Access中,您可以使用%和_通配符如果你開啓了ANSI 92 SQL模式 – 2009-06-06 04:14:23

+0

感謝Remou的迴應,它是我忘記的圓括號,SQL Server不需要它們,但是Access不會,謝謝你的幫助 – Icemanind 2009-06-08 22:12:56

-1

使用此sintax在訪問從來沒有失敗

(這是一個例子)

SELECT * FROM客戶,ADRESS 其中customer.id = adress.customerId

0

因爲訪問使用「,而不是」作爲字符串分隔符的語法錯誤引起的。正如前面提到的,你也將需要更改%通配符*