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

|