一个报表打印问题,简单,简单,确实简单.
我高了一个数据库,字段如下:
学号 姓名 英语 语文 数学
在表中录入数据后,现在我要打钱如下报表:
学号 姓名 英语 语文 数学 总分 平均分 排名次
总分则是英语+语文+数学 平均分是英语+语文+数学/3
排名次,根据总分排.
问题点数:20、回复次数:5Top
1 楼zhuzhuer(zhuzhuer)回复于 2002-04-04 14:49:19 得分 0
在窗体上拉一个QUICKREP控键,再拉一个adoquery控键进行属性的设置后,
然后编程,参照如下:
var
strsql:string;
begin
strsql:='select 学号,姓名,英语,语文,数学,b.sumzf,b.pjf from ';
strsql:=strsql+'( select 学号,sum(英语+语文+数学) as sumzf,sum(英语+语文+数学)/3 as pjf, from 表 ) as b,表名 ';
strsql:=strsql+'where 表的学号=b.学号 order by sumzf';
adoquery1.close;
adoquery1.sql.clear;
adoquery1.sql.add(strsql);
adoquery1.open;
quickrep1.print;Top
2 楼zhuxiao97(小菜哥)回复于 2002-04-04 14:56:31 得分 0
请问用query有用吗?Top
3 楼FlyingQQ(FlyingQQ)回复于 2002-04-04 14:58:22 得分 0
select 学号,姓名,英语,语文,数学,英语+语文+数学 as 总分,(英语+语文+数学)/3 as 平均分 form tablename order by 总分Top
4 楼FlyingQQ(FlyingQQ)回复于 2002-04-04 15:04:57 得分 0
select 学号,姓名,英语,语文,数学,英语+语文+数学 as 总分,(英语+语文+数学)/3 as 平均分 from tablename order by 总分
query当然有用,只不过query需要你配置连接数据库,比如说用ODBC或BDE,而ADOQUERY就可以直接连接数据库了,are you ok ?Top
5 楼zhuxiao97(小菜哥)回复于 2002-04-04 15:28:13 得分 0
排名呢.Top
6 楼zhuxiaojun9711()回复于 2002-06-11 08:25:21 得分 20
自已解决了。Top




