SQL求总分及平均分(delphi开发数据库)
用mssql生成一个表test字段有:id int(自动编号),学号 int,科目 char(20),成绩 int
数据有:
1)-,1,语文,60
2)-,1,数学,70
3)-,1,英语,75
4)-,2,语文,55
5)-,2,数学,53
6)-,2,英语,71
7)-,3,语文,80
8)-,4,数学,0
9)-,5,英语,91
……
编程要求,把所有人的各学科成绩及总分、平均分列出来,使用最简短的SQL语句来实现,每人一条记录,使用ADO数据库控件和网格来显示,如下:
注意:科目的个数是动态的(不确定的),要从上表中读出共多少科。
学号 语文 数学 英语 ... 总分 平均分
1 60 70 75 ... 205 68.3
2 55 53 71 ... 179 59.67
3 80 0或null 0或null ... 80 26.67
.....
.....
或者
学号 语文 数学 物理 化学 英语 政治 ... 总分 平均分
.....
.....
(可用动态语句创建临时表,或也可直接用组合SQL语句)补充:用delphi以ADO方式访问数据库。分别用两个网格来显示执行SQL语句前后的数据。最好能给出代码---关键是TADOQuery的ADOQuery.SQL.Add('');