sqlserver:select count(*) 总人数,sum(case 性别 then '男' then 1 else 0 end) 男学生人数,sum(case 性别 then '女' then 1 else 0 end) 女学生人数 from 表
如果不是sqlserver不支持case:select count(*) 总人数,(select count(*) from 表 where 性别='男') 男学生人数,(select count(*) from 表 where 性别='女') 女学生人数 from 表
SQLServer: 我写错了! select count(*) 总人数,sum(case 性别 when '男' then 1 else 0 end) 男学生人数,sum(case 性别 when '女' then 1 else 0 end) 女学生人数 from 表SQLServer or Oracle:select count(*) 总人数,(select count(*) from 表 where 性别='男') 男学生人数,(select count(*) from 表 where 性别='女') 女学生人数 from 表
Access2Kselect count(*) 总人数,sum(IIf(性别='男',1,0)) 男学生人数,sum(IIf(性别='女',1,0)) 女学生人数 from 表
select count(*) 总人数,sum(case 性别 when '男' then 1 else 0 end) 男学生人数,sum(case 性别 when '女' then 1 else 0 end) 女学生人数 from 表SQLServer or Oracle:select count(*) 总人数,(select count(*) from 表 where 性别='男') 男学生人数,(select count(*) from 表 where 性别='女') 女学生人数 from 表
而下边的产生这样的结果
班别 总人数 男学生人数 女学生人数
001 56 60 56
002 50 60 56
而且总是提示count(*) 总人数没的操作符()