比如:我做一个表“学生成绩表”
字段有:学号、姓名、语文、数学、英语、总分,总共六个字段,现在是有学生比如:学号:1、姓名:张三、语文:65、数学:75、英语:80;学号:2、姓名:李四、语文:60、数学:70、英语:80;学号:3、姓名:王麻子、语文:68、数学:72、英语:85;那么我怎么求他们的总分是多少?还有三个人的数学总分是多少、语文总分是多少、英语总分是多少、和他们的总分和是多少?再拿总分来平均分给他们,这样知道他们的平均分?谢谢!
字段有:学号、姓名、语文、数学、英语、总分,总共六个字段,现在是有学生比如:学号:1、姓名:张三、语文:65、数学:75、英语:80;学号:2、姓名:李四、语文:60、数学:70、英语:80;学号:3、姓名:王麻子、语文:68、数学:72、英语:85;那么我怎么求他们的总分是多少?还有三个人的数学总分是多少、语文总分是多少、英语总分是多少、和他们的总分和是多少?再拿总分来平均分给他们,这样知道他们的平均分?谢谢!
单人总分字段允许空值的话,先把各科成绩插入学生成绩表,再用UPDATE计算单人的总分:
UPDATE `学生成绩表` SET `总分` = `语文` + `数学` + `英语`;计算所有学生单科总分或者三科总分:
SELECT SUM(`语文`) AS `语文总分` FROM `学生成绩表`;
SELECT SUM(`总分`) AS `三科总分` FROM `学生成绩表`;
例如,
# 计算所有学生的数学总分
SELECT sum(`数学`) AS `mathSum` FROM `成绩表`
# 计算所有学生的总分和
SELECT sum(`语文`) + sum(`数学`) + sum(`英语`) AS `总分` FROM `成绩表
# 计算英语平均分
SELECT avg(`英语`) FROM `成绩表`
单科总分: select sum(语文) as 语文总分 from stu;
总分和: select sum(语文)+sum(数学)+sum(英语) as 总分和 from stu;
其中:12.4.2. 数学函数
那么下面怎么写?是这样写吗:$total=$obj->exec($sqlsum);这样怎么输出?
环绕yuwen两边的,是键盘tab键上面ESC键下面的那个斜点,不是引号什么的
$total=$obj->exec($sqlsum); 这种写法只是返回update,delete语法操作后的更新函数,要用 $obj->query()来取得select语句的结果集
http://cn.php.net/manual/en/pdo.query.php
没有错,下面应该怎么写,怎么输出?我不知道啦!
显然这是在使用自定义的类,这个累的使用方法由开发者提供。我们不知道你的类值如何定义的,当然也就不知道下一步该如何做了
$sql="select sum(`yuwen`) as yuwen_sum from cehngjidan where Uid='".$Uid."'";
$result=mysql_query($sql);
$row=mysql_fetch_assoc($result);
echo $row['yuwen_sum'];
create table `学生成绩表` (
`学号` int,
`姓名` varchar(10),
`语文` int default 0,
`数学` int default 0,
`英语` int default 0,
`总分` int default 0,
PRIMARY KEY (`学号`)
)
SQL;
//mysql_query($sql) or die(mysql_error());//执行一次后就注释掉$sql = <<< SQL
insert into `学生成绩表` values
(1, '张三', 65, 75, 80, 0),
(2, '李四', 60, 70, 80, 0),
(3, '王麻子', 68, 72, 85, 0)
SQL;
//mysql_query($sql) or die(mysql_error());//执行一次后就注释掉//mysql_query('update `学生成绩表` set `总分`=`语文`+`数学`+`英语`');//执行一次后就注释掉$sql =<<< SQL
select
sum(`总分`) as `总分合计`, avg(`总分`) as `总平均分`,
sum(`语文`) as `语文总分`, avg(`语文`) as `语文平均分`,
sum(`数学`) as `数学合计`, avg(`数学`) as `数学平均分`,
sum(`英语`) as `英语合计`, avg(`英语`) as `英语平均分`
from `学生成绩表`
SQL;
$rs = mysql_query($sql) or die(mysql_error());
$row = mysql_fetch_assoc($rs);
print_r($row);
Array
(
[总分合计] => 655
[总平均分] => 218.3333
[语文总分] => 193
[语文平均分] => 64.3333
[数学合计] => 217
[数学平均分] => 72.3333
[英语合计] => 245
[英语平均分] => 81.6667
)
(1, '张三', 65, 75, 80, 0),
(2, '李四', 60, 70, 80, 0),
(3, '王麻子', 68, 72, 85, 0)
只有一个就是 table 是 chengjidan 其余都一样。