首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >SQL -如何查询所有可能的ID

SQL -如何查询所有可能的ID
EN

Stack Overflow用户
提问于 2011-06-23 19:11:57
回答 2查看 95关注 0票数 0

我需要在我的报告中说明10个可能的建筑工地。但是,正如我现在的代码所示,当建筑工地不在我的数据库中时,它根本不会被计算在内,这是有道理的,但我更喜欢它列出所有可能的建筑工地,并将值设置为0,而不是什么也不返回。我需要这样做的原因是因为我是基于这些查询创建报告的,除非我每次都一致地将所有的建筑工地都计算在内,否则很难把所有的东西都整理好。下面是SQL语句:

代码语言:javascript
运行
复制
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,这是有区别的。

谢谢

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-06-23 19:42:41

如果我没看错您的问题,那么您需要Research表中的所有字段,而不管它们是否在Main表中。在这种情况下,您只需要一个LEFT OUTER JOIN

代码语言:javascript
运行
复制
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

票数 1
EN

Stack Overflow用户

发布于 2011-06-23 19:41:33

最有可能的情况是,你需要用左连接替换内连接。(例如,只需将“内部”更改为“左侧”。)这样,没有在Main中表示的建筑工地就不会被过滤掉。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6453108

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档