大量数据统计,急?急?急?(全天在线) (100分)

  • 主题发起人 主题发起人 边城浪子
  • 开始时间 开始时间

边城浪子

Unregistered / Unconfirmed
GUEST, unregistred user!
本人正在做招生录取报到系统,学生报到后需要对数据进行统计,不知如何去做,还请高手请点一二,小弟将不盛感激,定有重谢。
数据资料如下:
院(系)代码表:yxdm_table
列名 类型 大小 描述
yxdm char 2 院(系)代码---主键
yxmc varchar 20 院(系)名称
专业代码表:zydm_table
列名 类型 大小 描述
zydm char 6 专业代码---主键
zymc varchar 20 专业名称
yxdm char 2 所属院(系)代码
zyxh char 2 专业序号
生源计划表:syjh_table
列名 类型 大小 描述
yxdm char 2 所属院(系)代码
zydm char 6 专业代码
sydq varchar 20 生源地区
sysl int 生源数量
招生信息表:zsxx_table(主要字段)
列名 类型 大小 描述
zkzh char 9 准考证号---主键
xm varchar 20 姓名
......
yxdm char 2 所属院(系)代码
zydm char 6 专业代码
sydq varchar 20 生源地区
招生统计表:zstj_table
列名 类型 大小 描述
tjdw varchar 40 统计单位
zsjh int 招生计划数
sjlq int 实际录取人数
bdrs int 报到人数
wbdrs int 未报到人数
bdl decimal (5,4) 报到率

需要对各专业、各院(系)进行统计将得到如下结果,将数据添加到zstj_table表
院(系)/专业 原招生计划数 实际录取数 报到人数 未报到人数 报到率
统计方法将如何实现???




 
SQL问题,找本书看看
 
select a.yxdm,a.yxmc,b.zydm,,b.zymc,sum(c.sysl),sum(d.....)
from a,b,c,e...
where a.yxdm=b.yxdm on b.zydm=c.zydm...
group by a.yxdm.a.yxmc,b.zydm,b.zymc....
 
SQL的效率是最高的。
 
首先,你的统计表不合理
应该为:
zydm char 6 专业代码
yxdm char 2 所属院(系)代码
zsjh int 招生计划数
sjlq int 实际录取人数
bdrs int 报到人数
wbdrs int 未报到人数
bdl decimal (5,4) 报到率
首先,按专业统计,得到各种数据
院系不就很简单了
另外,上表的主键是yxdm+zydm
好点了吗?

 
统计表是根据统计报表来设计的
 
统计表不完全根据统计报表来
或者以我建的表作为中间表,也好统计,也容易得到你所要得表
 
一次能否全部统计出来
 
首先按专业,用一句可全部统计出来--专业统计表
专业统计表中数据很少,你尽可以随便处理
 
后退
顶部