显示出group后count为0的数据

空空法师 2008-01-31 07:53:47

在归类统计的时候有什么办法显示出含有0的数据?要在Access中可以运行。

比如有一个统计一个小组男生,女生数量的query:

SELECT [Group], Gender, count(*) AS [Count]
FROM MyTable
GROUP BY [Group], Gender

如果这个组没有男生在结果中就没有显示。但我要显示出0。这样的结果就比较整洁,并便于处理数据。比如

A Male 2
A Female 3
B Male 0
B Female 4

但现在的情况是

A Male 2
A Female 3
B Female 4

中间缺少一个。有什么简单的办法解决这个问题?多谢!
...全文
410 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
WWWWA 2008-02-01
  • 打赏
  • 举报
回复
OR
TRANSFORM Count(Gender) AS GenderOfCount SELECT Group FROM MyTable GROUP BY Group
PIVOT Gender IN("MALE","FEMALE")
liuyann 2008-01-31
  • 打赏
  • 举报
回复
TRANSFORM Count(Gender) AS GenderOfCount
SELECT Group
FROM MyTable
GROUP BY Group
PIVOT Gender;
liuyann 2008-01-31
  • 打赏
  • 举报
回复
liuyann 2008-01-31
  • 打赏
  • 举报
回复
OracleRoob 2008-01-31
  • 打赏
  • 举报
回复
keep it simple
------------------------

??
liuyann 2008-01-31
  • 打赏
  • 举报
回复
简单
keep it simple
OracleRoob 2008-01-31
  • 打赏
  • 举报
回复

select c.[Group],c.[Gender],nz(t.[Count] ,0) as [count]
from
(select [Group], Gender, count(*) AS [Count] from MyTable Group by [Group], Gender ) as t
right join
(select * from
(select [group] from MyTable group by [group]) as a,
(select [Gender] from MyTable group by [Gender]) as b
) as c on t.[Group]=c.[Group] and t.[Gender]=c.[Gender]
WWWWA 2008-01-31
  • 打赏
  • 举报
回复
SELECT [Group], Gender, count(*) AS [Count]
FROM
(SELECT 'A' AS [Group],'Male' AS Gender,0
UNION
SELECT 'A' AS [Group],'Female' AS Gender,0
UNION
SELECT 'B' AS [Group],'Male' AS Gender,0
UNION
SELECT 'B' AS [Group],'Female' AS Gender,0
UNION
SELECT * FROM MyTable)
GROUP BY [Group], Gender

OR

将A、B、MALE、FEMALE写入临时表再与工作表连接,再GROUP

7,712

社区成员

发帖
与我相关
我的任务
社区描述
Microsoft Office Access是由微软发布的关系数据库管理系统。它结合了 MicrosoftJet Database Engine 和 图形用户界面两项特点。
社区管理员
  • Access
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧