读书人

多个表怎么统一操作?多谢

发布时间: 2013-07-08 14:13:00 作者: rapoo

多个表如何统一操作?谢谢
今有高一、高二、高三年级各70各班级的成绩表共210个表,表的结构相同,表的结构为

考试号、姓名、语文、数学、英语、物理、化学、地理、历史、政治、生物

如何较快的求出每个年级的每个班的每学科(例如语文、按语文排序)的前40名的平均分

今有高一、高二、高三年级各70各班级的成绩表,共210个表,

表名:f06xm01,f06xm02,...f06xm70.dbf

f07xm01,f07xm02,...f07xm70.dbf

f08xm01,f08xm02,...f08xm70.dbf


[解决办法]
遍历全部表,将统计结果插入结果表


select top 40 * from &表 order by &学科 into cursor temp
select &表, avg(&学科) as &学科 from temp

[解决办法]
按每班50人计算,210个班也不过1万余人,为什么不放在一个表内呢?
[解决办法]


a=iif(d=1,5,10)
[解决办法]
这么多表,先把资料合并到一个表处理吧!
例如:
SET DEFAULT TO 目录
*创建临时结果表
CREATE TABLE cTmpResult(......)
For i=6 To 8
 For j=1 To 12
  cTableName="f0"+Str(i,1)+"xm"+Iif(j<10,'0'+Str(j,1),Str(j,2))
  INSERT INTO cTmpResult SELECT * FROM (cTableName)
 Endfor
Endfor
现在只要针对这一个cTmpResult表作查询就方便了!

读书人网 >VFP

热点推荐