Microsoft Access SQL查询

时间:2009-06-05 17:43:51

标签: sql sql-server tsql ms-access

有人可以帮我解决一下问题吗?在Microsoft SQL Server中,我有以下查询,执行正常:

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以来,它一直是永远的,但如果我没记错,我认为连接需要在括号中。任何帮助都会有用!

4 个答案:

答案 0 :(得分: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*'

请注意,星号用于Access查询窗口,而使用DAO,百分比用于ADO。

答案 1 :(得分:0)

Access使用不同的通配符模式 在你的情况下,它会 - 像'洪水?' (用星号替换问号)。

我不知道要在此处应用的格式代码,以便正确显示它 有关详情,请参阅链接 - http://www.techonthenet.com/access/queries/like.php

答案 2 :(得分:0)

导致语法错误,因为访问使用“而不是”作为字符串分隔符。如前所述,您还需要将%通配符更改为*

答案 3 :(得分:-1)

在访问中使用此sintax永远不会失败

(这是一个例子)

从客户,地址中选择* customer.id = adress.customerId