主题:  我有一个模块非常难写,各位大虾帮帮忙!急!恳请板主置顶一段时

晚风

职务:普通成员
等级:1
金币:0.0
发贴:10
#12002/8/12 10:04:55
表结构如下:

CREATE TABLE mark (
id tinyint(4) default NULL,#学号
mark float(10,2) default NULL,
subject enum('yuwen','shuxue','yinyu','sixiang','shehui','yinyue','meishu','zirang','computer','tiyu') default NULL,
type enum('作业','测验','期中考试','期末考试') default NULL,
date date default NULL
)

要实现的结果是:对每个科的学生学年平均分进行排名!(如,shuxue=数学)
学生平均分=(sum作业/次数)*所占%+(sum测验/次数)*所占%+(sum期中考试/次数)*所占%+(sum期末考试/次)*所占%

其中所占%由一个FORM表单递交,变量分别是$s1,$s2,$s3,$s4

请各位大虾帮帮忙!



晚风

职务:普通成员
等级:1
金币:0.0
发贴:10
#22002/8/13 11:25:47
怎么就没人帮帮我啊?真失望!



helmet

职务:版主
等级:4
金币:10.0
发贴:1559
#32002/8/13 22:35:04
不太懂,帮什么?SQL语句?还是PHP代码?



晚风

职务:普通成员
等级:1
金币:0.0
发贴:10
#42002/8/14 9:09:46
楼上的大哥,就是帮我写一段代码啊!PHP的。谢谢了。



5D荣誉斑竹

职务:普通成员
等级:2
金币:1.0
发贴:400
#52002/8/14 15:19:19
建议把要求和问题具体一些,我的意思是你先尝试着写,遇到问题再问,这样太笼统了,回答也不好入手



晚风

职务:普通成员
等级:1
金币:0.0
发贴:10
#62002/8/17 10:42:24
我是这样写的mySQL
select id,avg(mark) from mark where subject='yuwen' and type='作业' group by id
这样得到一个人在各项上所需要的分数,然后在PHP中算出平均分,这个没问题吧,放入一个数据$arrMark['id']['subject']=$mark,这里的id和subject是变量,然后把数组降序排列,得到名次(这里是单类别的平均分)

然后,学生总平均分=(作业的平均分)*所占%+(测验的平均分)*所占%+(其中考试)*所占%+(期末考试)*所占%

思路是想出来了,但没有一个完整的代码,做不下去,谁来帮帮我?