delphi 读取数据库中的数据并计算
delphi7,数据库access2007,表中主键ID,用ADOQuery组件,想逐个读取出某一列(如“语文”一列)的所有数据,然后进行加和求平均数,数据库连接没错,就...
delphi7,数据库access2007,表中主键ID,用ADOQuery组件,想逐个读取出某一列(如“语文”一列)的所有数据,然后进行加和求平均数,数据库连接没错,就是不知道这个【逐行读取的语句】怎么写,小女没分,只求交流,谢谢了
展开
1个回答
展开全部
第一种方法:
改改SQL语句试试:
SELECT sum(语文) as 语文总分,avg(语文) as 语文平均分 from 成绩
然后
xxxx := ADOQuery.FieldValues['语文总分']; //取语文总分
xxxx := ADOQuery.FieldValues['语文平均分']; //取语文平均分
第二种方法:【逐行读取的语句】
ADOQuery.Active := True;
zf := 0;
icount := 0;
while not ADOQuery.Eof do begin
zf := zf + ADOQuery.FieldValues['语文']; //累加语文总分
Inc(icount);
ADOQuery.Next;
end;
pjf := zf / icount; // 平均分
改改SQL语句试试:
SELECT sum(语文) as 语文总分,avg(语文) as 语文平均分 from 成绩
然后
xxxx := ADOQuery.FieldValues['语文总分']; //取语文总分
xxxx := ADOQuery.FieldValues['语文平均分']; //取语文平均分
第二种方法:【逐行读取的语句】
ADOQuery.Active := True;
zf := 0;
icount := 0;
while not ADOQuery.Eof do begin
zf := zf + ADOQuery.FieldValues['语文']; //累加语文总分
Inc(icount);
ADOQuery.Next;
end;
pjf := zf / icount; // 平均分
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询