SQL-如何为所有可能的ID设置查询帐户

| 我需要在报告中说明10个可能的建筑工地。但是,就像我现在的代码一样,当一个建筑工地不在我的数据库中时,根本就不占它,这是有道理的,但是我希望它列出所有可能的建筑工地并将值0设置为而不返回任何东西。之所以需要这样做,是因为我基于这些查询来创建报告,并且除非我始终每次都对所有施工现场进行核算,否则很难将所有内容排成一行。这是SQL:
TRANSFORM Count(Main.ID) AS CountOfID
SELECT \'Total IDs\' AS [Construction site   >>>]
FROM Research INNER JOIN Main ON Research.Primary_ID = Main.ID
GROUP BY \'Total IDs\'
PIVOT Research.Construction_site;
顺便说一句,我正在使用MS Access 2007有所作为。 谢谢     
已邀请:
        如果我正确地阅读了您的问题,则希望
Research
表中的所有字段,无论它们是否在
Main
表中。在这种情况下,您只需要
LEFT OUTER JOIN
TRANSFORM Count(Main.ID) AS CountOfID
SELECT \'Total IDs\' AS [Construction site   >>>]
FROM Research LEFT OUTER JOIN Main ON Research.Primary_ID = Main.ID
GROUP BY \'Total IDs\'
PIVOT Research.Construction_site;
这将至少一次返回
Research
表中的所有行,如果在
Main
表中存在多次,则返回多次。     
        很可能您需要用LEFT JOIN替换INNER JOIN。 (即,只需将\'INNER \'更改为\'LEFT \'。)这样,不会过滤掉Main中未显示的施工现场。     

要回复问题请先登录注册