vb急!!!高手请进!!!

来源:百度知道 编辑:UC知道 时间:2024/05/19 20:15:33
我有一个存放学生成绩的数据库,里面有525个学生的各科成绩,现在我执行(rs.Open "select 姓名, sum(成绩) from 学生成绩 group by 姓名 ", conn)后返回的记录却只有521条,这是为什么啊?摆脱各位帮帮忙吧!!!
没有任何重名的学生。
我看了,每条记录都有值,没有NULL,我要统计的是每个学生的各科总成绩,不是所有学生的总成绩。所以就需要用group by

因为用SQL统计函数统计总数时,若遇到某一栏位为NUll(没输入任何资料)将不会统计。如总数有525但有4个为NULL所以才会出现总数为521。
解决方案:
1. 请确保全部栏位无有空资料。
2. 或用以下方法来统计总数和计算总数。
dim sum,num as integer
sum=0
num=0
rs.movefirst
do while not rs.eof
sum=sum+rs("成绩")
num=num+1
loop

print "成绩总和:" & sum
print "总学生人数:" & num

很简单,你用了group by,看是不是有姓名是重复的,重复的就不记进去了

不要group by就可以了.group by 如果出现相同的姓就排不进去

你可不可以把数据库压缩发给我看看
65192345