我的代码:
$result2 = mysql_query("SELECT units,finalgrade FROM grades WHERE course='BSN' && semester='1-1' && studentnumber='$username'");
while($row = mysql_fetch_array($result2))
{
$aw=array($row['units']*$row['finalgrade']);
}
这个输出: 5.25,6,6.75,6,5.25,6.75,4.5
我怎样才能得到这些数字的总和?
答案 0 :(得分:5)
您可以使用此查询在SQL中完全执行此操作:
SELECT SUM(units * finalgrade) AS thesum FROM grades WHERE ....
将返回一行,您可以使用$row['thesum']
读取结果。
答案 1 :(得分:0)
你可以用两种方式做到这一点
$result2 = mysql_query("SELECT sum(units*finalgrade) as units FROM grades WHERE course='BSN' && semester='1-1' && studentnumber='$username'");
while($row = mysql_fetch_array($result2))
{
$aw=array($row['units']);
}
或
$result2 = mysql_query("SELECT units,finalgrade FROM grades WHERE course='BSN' && semester='1-1' && studentnumber='$username'");
while($row = mysql_fetch_array($result2))
{
$aw +=array($row['units']*$row['finalgrade']);
}
答案 2 :(得分:0)
你应该使用SQL来做,如果只需要求和,则不需要将所有数据都提供给客户端。 所以Jon的答案对你有意义。
答案 3 :(得分:0)
对于学生NO = 5的个别学生
SELECT studentNO, SUM(units * finalgrade) AS thesum
FROM grades
WHERE studentNO =5;
studenNO thesum
5 500
对所有学生
SELECT studenNO, SUM(units * finalgrade) AS thesum
FROM grades
group by studentNO ;
studenNO thesum
5 500
6 510
7 480
答案 4 :(得分:-1)
使用array_sum:
$sum = array_sum($aw)