我在 Access 中有这个 SQL 查询,它工作正常:
SELECT TableA.FieldA As [Code],
Count(TableA.FieldC) AS [Count]
FROM ((MainTable)
LEFT JOIN TableA ON MainTable.FieldB = TableA.FieldB)
WHERE (((MainTable.DateOf)>=#1/1/2012#))
AND Clng(TableA.FieldA) >= 119593451
AND Clng(TableA.FieldA) <= 119593461
GROUP BY TableA.FieldA;
但是当我尝试另一个左连接时,就像这样:
SELECT TableA.FieldA As [Code],
Count(TableA.FieldC) AS [Count]
FROM ((MainTable)
LEFT JOIN TableA ON MainTable.FieldB = TableA.FieldB)
LEFT JOIN TableB ON TableA.FieldD = TableB.FieldD
WHERE (((MainTable.DateOf)>=#1/1/2012#))
AND Clng(TableA.FieldA) >= 119593451
AND Clng(TableA.FieldA) <= 119593461
GROUP BY TableA.FieldA;
我在基于此的 FROM 子句中使用括号:http: //nm1m.blogspot.com/2007/10/multiple-left-joins-in-ms-access.html
它给出了错误Invalid use of Null
,这对我来说没有意义,因为我没有执行空检查等。这里有什么问题?我试图在 TableB 中拉出一个字段来显示(但还没有把它放在选择部分)。