数据库查询问题(50分)

Y

yuxuant

Unregistered / Unconfirmed
GUEST, unregistred user!
有一表,想统计总人数,女性人数,大学生人数,大专生人数,少数民族人数,20岁以下人数,21-30岁人数等等,把结果放到一个grid里
,如何实现,最好统计速度快?
 
另外,当人数=0时最好也能显示出来。
 
select count(*),sum(case when sex=woman then 人数 else 0 end)
sum(case when .......x)
from tablename
 
我用的是SQL SERVER数据库。
ugvanxk :不好使啊?
 
可以在数据库中创建一个临时表,字段为总人数,女性人数,大学生人数,大专生人数,
少数民族人数,20岁以下人数,21-30岁人数,然后用select 语句挨个查询并且存到
对应的字段中,最后用dbgrid显示该表中数据,完成之后删除数据,待下次使用,办法
较笨,但肯定能实现。[:)]
 
用group不好么?[:)]
 
Select count(sex) from ... group by sex 等一个个来吧
 
我觉得用临时表,计算速度会比较快一点,另外实现的方法也简单多了
 
select xxx,count(*) as 人数 from 你的库.db where yyy:='大学生' group by xxx;
 
顶部