Access中分组统计的实例
整理自:http://expert.csdn.net/Expert/topic/2727/2727523.xml?temp=.1140711 
online 表下有字段: 
描述:用户名      版本        是否注册 
字段:usr_name      ver        isreg 
现表中有以下记录: 
aaa cn true 
bbb cn false 
ccc en true 
ddd fr true 
结果要求:查询每个版本的注册用户和未注册用户的数目,得出如下结构: 
版本 注册数量  未注册 
cn 1 1 
en 1 0 
fr 1 0 
请教在 Access 2000 环境下 SQL 语句的写法 
困扰几天终于解决: 
1. MS SQL SERVER 2000中的一种方式: 
select ver as 版本, sum(case when isreg=true then 1 else 0 end) as 注册数量, sum(case when isreg=false then 1 else 0 end) as 未注册数量 from online group by 版本 
2. Access 2000下测试通过: 
SELECT DISTINCT ver as 版本, (SELECT COUNT(*) FROM online WHERE ver=m.ver and isreg=TRUE) AS 注册数量, (SELECT COUNT(*) FROM online WHERE ver=m.ver and isreg=FALSE) AS 未注册数量 
FROM online AS m