比如:我做一个表“学生成绩表”
字段有:学号、姓名、语文、数学、英语、总分,总共六个字段,现在是有学生比如:学号:1、姓名:张三、语文:65、数学:75、英语:80;学号:2、姓名:李四、语文:60、数学:70、英语:80;学号:3、姓名:王麻子、语文:68、数学:72、英语:85;那么我怎么求他们的总分是多少?还有三个人的数学总分是多少、语文总分是多少、英语总分是多少、和他们的总分和是多少?再拿总分来平均分给他们,这样知道他们的平均分?谢谢!
------解决方案--------------------
select sum(`yuwen`) from cehngjidan where Uid='".$Uid."'";
环绕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'];
------解决方案--------------------
- PHP code
$sql =<<< SQLcreate 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 = <<< SQLinsert 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 =<<< SQLselect 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);