【发布时间】:2012-12-04 15:07:06
【问题描述】:
有谁知道下面的查询有什么不正确的地方吗?
SELECT S1.[Company], COUNT(S1.[Milestone]) AS ShouldBeMilestones
FROM Sheet1 AS S1
INNER JOIN Sheet1 S2
ON S2.[Company] = S1.[Company]
AND S2.[Project] = S1.[Project]
AND S2.[Milestone] = 'Milestone 1'
AND S2.[%compl#] = 100
INNER JOIN Sheet1 S3
ON S3.[Company] = S1.[Company]
AND S3.[Project] = S1.[Project]
AND S3.[Milestone] = 'Milestone 2'
AND S3.[%compl#] = 100
WHERE ((S1.[Task class] <> 'A') AND (S1.[Task class] <> 'B') AND (S1.[Task class] <> ''))
AND S1.[Milestone] NOT LIKE '0.*' AND S1.[Milestone] NOT LIKE '1.*'
AND S1.[Start] <= Now()
GROUP BY S1.[Company];
我在 MS Access 2010 中运行时收到“FROM 子句中的语法错误”消息...
任何想法将不胜感激!
谢谢,
【问题讨论】:
-
我认为(但不能确定地记得)Access 需要多个连接以
(())括起来。所以FROM (((Sheet1 AS s1) INNER JOIN Sheet1 S2 ON .....) INNER JOIN Sheet1 S3 ON ....)
标签: sql ms-access inner-join