在窗体上拉一个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;

解决方案 »

  1.   

    select 学号,姓名,英语,语文,数学,英语+语文+数学 as 总分,(英语+语文+数学)/3 as 平均分 form tablename order by 总分
      

  2.   

    select 学号,姓名,英语,语文,数学,英语+语文+数学 as 总分,(英语+语文+数学)/3 as 平均分 from tablename order by 总分
    query当然有用,只不过query需要你配置连接数据库,比如说用ODBC或BDE,而ADOQUERY就可以直接连接数据库了,are you ok ?