一个分组统计问题,大家能否帮忙解决?

sanduVB 2004-08-22 11:43:34


各位专家高手:


谁能发一个msflexgrid(或mshflexgrid或vsflexgrid)分组统计实例(代码也行)?
即横列标题显示的是数据库中某一字段的里面的内容
纵列标题显示的是数据库中另一字段中的内容,
然后在单元格内统计出同时满足纵横列行两两对应内容的记录数。
请高手出招。

以下为简图(有两字段:学历和学校名称,其中学历字段中的内容有中专、专科等,学校名称字段中有里程高中、江南高中等)例如:要统计出学历是中专同时学校又是里程高中的人有多少?等:

中专 专科 本科 研究生 合计
里程高中 0 0 0 0 0
江南高中 0 0 0 0 0
三月高中 0 0 0 0 0
...全文
147 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
sanduVB 2004-08-25
  • 打赏
  • 举报
回复
??
here4u 2004-08-24
  • 打赏
  • 举报
回复
create table TB (编号 int, 姓名 varchar(20),学校 varchar(50),学历 varchar(20) )
insert tb select 1,'老不死','棒学校','大学'
union all select 1,'还没死','好学校','中专'
union all select 1,'快去死','烂学校','大专'
union all select 1,'毛毛四','棒学校','研究'
union all select 1,'赶紧死','坏学校','大学'
union all select 1,'赶紧死','差学校','中专'
union all select 1,'赶紧死','坏学校','大专'

select '棒学校', sum(case when 学历='研究' then 1 else 0 end) 研究生,
sum(case when 学历='大学' then 1 else 0 end) 大学,
sum(case when 学历='大专' then 1 else 0 end) 大专,
sum(case when 学历='中专' then 1 else 0 end) 中专
from tb where 学校='棒学校'
union all
select '好学校', sum(case when 学历='研究' then 1 else 0 end) 研究生,
sum(case when 学历='大学' then 1 else 0 end) 大学,
sum(case when 学历='大专' then 1 else 0 end) 大专,
sum(case when 学历='中专' then 1 else 0 end) 中专

from tb where 学校='好学校'
union all
select '烂学校', sum(case when 学历='研究' then 1 else 0 end) 研究生,
sum(case when 学历='大学' then 1 else 0 end) 大学,
sum(case when 学历='大专' then 1 else 0 end) 大专,
sum(case when 学历='中专' then 1 else 0 end) 中专

from tb where 学校='烂学校'
union all
select '差学校', sum(case when 学历='研究' then 1 else 0 end) 研究生,
sum(case when 学历='大学' then 1 else 0 end) 大学,
sum(case when 学历='大专' then 1 else 0 end) 大专,
sum(case when 学历='中专' then 1 else 0 end) 中专

from tb where 学校='差学校'
sanduVB 2004-08-24
  • 打赏
  • 举报
回复
??
sanduVB 2004-08-24
  • 打赏
  • 举报
回复
??
sanduVB 2004-08-24
  • 打赏
  • 举报
回复
谢谢楼上,
这种方法是不是效率有点低?
还有没有更好一点的办法?
sanduVB 2004-08-23
  • 打赏
  • 举报
回复
主要用于各高中教职工管理。
数据库字段:编号、姓名、学校名称、学历、所教学科、参加工作时间
(其中学历字段中的录入内容有中专、专科等,学校名称字段中录入有里程高中、江南高中等内容)
bboos 2004-08-23
  • 打赏
  • 举报
回复
给出数据库字段先!
sanduVB 2004-08-23
  • 打赏
  • 举报
回复
??
sanduVB 2004-08-23
  • 打赏
  • 举报
回复
能说具体点吗?谢谢!
chenyu5188 2004-08-23
  • 打赏
  • 举报
回复
交叉表
sanduVB 2004-08-23
  • 打赏
  • 举报
回复
有人能帮解答吗?
sanduVB 2004-08-23
  • 打赏
  • 举报
回复
??
sanduVB 2004-08-22
  • 打赏
  • 举报
回复
应该很清楚了。
iiboy 2004-08-22
  • 打赏
  • 举报
回复
问题描述不得很清楚,可是提供的数据不够解决该问题.
Andy__Huang 2004-08-22
  • 打赏
  • 举报
回复
沒有實際意義的數據表,給點數據吧?
sanduVB 2004-08-22
  • 打赏
  • 举报
回复
有人帮忙吗?

1,216

社区成员

发帖
与我相关
我的任务
社区描述
VB 数据库(包含打印,安装,报表)
社区管理员
  • 数据库(包含打印,安装,报表)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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