PHP SUM函数 [英] PHP SUM function
问题描述
我有一个如下表:
id q_id value
------------------------
1 2 5
2 2 NULL
3 2 5
4 2 NULL
5 4 2
6 4 NULL
7 4 2
8 4 NULL
我想要的是获取(例如)所有值where q_id = 2
What I want is to get the sum of (for example) all value where q_id = 2
$sq = mysql_query("SELECT SUM(value) AS sum FROM table WHERE q_id = 2)or die(mysql_error());
while($row = mysql_fetch_array($sq)){
$sum = $row['sum'];
}
echo $sum."<br>";
但是我得到了
5
5
但是我想要的是值的总和,而期望值是10.
But what I want is the sum of the value and expecting 10 instead.
感谢您的帮助.
推荐答案
如果您仍然要遍历结果集,为什么不只使用
If you're going to loop over the result set anyway, why not just use
SELECT value FROM table WHERE q_id=2
然后使用while循环求和这些值?像这样:
then sum up those values using the while loop? Something like:
while($row = mysql_fetch_array($sq)) {
$sum += $row['value'];
}
echo $sum."<br>";
while($row = mysql_fetch_array($sq)) {
$sum += $row['value'];
}
echo $sum."<br>";
而且,正如Jason McCreary所说,您应该研究查询数据库的另一种方法.我建议在php.net上搜索"PDO",它非常易于使用.
also, as Jason McCreary said above, you should look into an alternate method of querying the database. I would suggest searching php.net for "PDO", which is very easy to use.
这篇关于PHP SUM函数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!