| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 580 人关注过本帖
标题:ASP的统计问题
只看楼主 加入收藏
shineld
Rank: 1
等 级:新手上路
帖 子:23
专家分:0
注 册:2007-7-25
收藏
 问题点数:0 回复次数:8 
ASP的统计问题
我要做一个ASP 来 统计班级的不合格率

班级的信息存在一个叫学生(xs)的表中
成绩变量为(cj)存在一个成绩(cj)表中.两者有相互联系的变量

我想问下应该怎么编写相应的语句

sqlstr1="select * from cj where cj<60"
Set rs1 = Server.Createobject("ADODB.recordset")
rs1.open sqlstr1,conn,1,3

应该怎么修改才能达到统计的效果呢??


个人认为可能是要用到group 语句,但是不知道该怎么使用
请指点一下
给个思路


搜索更多相关主题的帖子: 统计 ASP 
2007-07-25 17:38
shineld
Rank: 1
等 级:新手上路
帖 子:23
专家分:0
注 册:2007-7-25
收藏
得分:0 
bj-存储在学生表中的变量


sqlstr1="select * from xs.bj ,count(xs.*) as "b" from x swhere cj.cj<60";
group by xs.bj


这样的话有没什么问题,或者怎么修改下,输出的话又应该怎么调用呢
2007-07-25 18:08
ayue222
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:341
专家分:0
注 册:2007-7-25
收藏
得分:0 

什么乱七八糟的。。。不明白说啥。。。。。。。。。

2007-07-25 18:15
shineld
Rank: 1
等 级:新手上路
帖 子:23
专家分:0
注 册:2007-7-25
收藏
得分:0 

就是我要完成一个统计班级的不合格率的程序

这些数据都已经预先放在acess的数据表里面了
要按照班级分别查询出每个班不合格的人数再计算出不合格率最终显示出来

想不好该怎么写ASP语句
感觉上是要用group语句吧

但是不知到该怎么写,也不知道用group分组好的数据该如何去调用才能算出不合格率并且输出

班级(bj)的信息存在一个叫学生(xs)的表中
成绩变量为(cj)存在一个成绩(cj)表中.两者有相互联系的变量


应该怎么写这个功能呢

能不能给我个示范

谢谢了

2007-07-25 18:25
shineld
Rank: 1
等 级:新手上路
帖 子:23
专家分:0
注 册:2007-7-25
收藏
得分:0 
a0= Conn.Execute=("select * from xs.bj ,count(xs.*) as "b" from xs where cj.cj<60";group by xs.bj)


我能想到的语法

然后就不知道该怎么做下一步了
2007-07-25 18:26
shineld
Rank: 1
等 级:新手上路
帖 子:23
专家分:0
注 册:2007-7-25
收藏
得分:0 

有人能帮我看一下吗?

2007-07-25 21:55
shineld
Rank: 1
等 级:新手上路
帖 子:23
专家分:0
注 册:2007-7-25
收藏
得分:0 
没人了吗?
2007-07-25 22:09
shineld
Rank: 1
等 级:新手上路
帖 子:23
专家分:0
注 册:2007-7-25
收藏
得分:0 

我的代码
sqlstr1="select bj from cj,xs,kc where cj.cj<60 Group By xs.bj"
Set rs1 = Server.Createobject("ADODB.recordset")
rs1.open sqlstr1,conn1,1,3

Response.Write "<p>Group By 班级"

a=0

if not rs1.eof then

do while not (rs1.eof or rs1.bof) and count<rs1.PageSize

a0= Conn1.Execute("Select count(*) From cj,xs,kc where cj.cj<60 Group By xs.bj")(0)
b0= Conn1.Execute("Select count(*) From cj,xs,kc where cj.cj<101 Group By xs.bj")(0)
a=a0/b0*100
a=fix(a)

Response.Write "<BR>" & rs1("bj")
%>

<td><%=a&"%"%></td>

<%
rs1.movenext

loop

else
response.write"<p>发生错误1!<p>"

response.end

end if
%>

运行后显示



Group By 班级
040 40%
041 40%
042 40%
043 40%
044 40%
045 40%


输出的是全部学生的不及格率

怎么样才能按照分组输出各个班级的不及格率呢?


[此贴子已经被作者于2007-7-26 0:35:10编辑过]

2007-07-25 23:29
阳光白雪
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:39
帖 子:2220
专家分:0
注 册:2005-11-18
收藏
得分:0 
首先统计班级的总人数,再统计不及格的人数,把后者除以前者不就得到结果了

专注于WEB前端交互平台开发:[url=http://blog./]blog.[/url](富客户端技术(RIA)交流平台)
2007-07-26 08:35
快速回复:ASP的统计问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.035123 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved