PHP 功能金额

我有一个桌子,如下所示:


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



$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 而不是这个。

谢谢您的帮助。
已邀请:

八刀丁二

赞同来自:

如果你仍然要留在生成的集合上,为什么不用使用


SELECT value FROM table WHERE q_id=2


然后使用这些值总结 while loop? 有点:


while/$row = mysql_fetch_array/$sq// {
    $sum += $row['value'];
}
echo $sum."<br/>";


Edit: 另外,如上所述 Jason McCreary, 您应该探索备用数据库查询方法。 我会建议搜索 php.net 为了 "PDO", 这很容易使用。

帅驴

赞同来自:

让他尝试......你展示
value

, 您的代码中没有引用。


$sq = mysql_query/"SELECT SUM/value/ AS sum FROM `table` WHERE `q_id` = '2'"/or die/mysql_error///;

while/$row = mysql_fetch_assoc/$sq//
{
$sum = $row["sum"];
}

echo $sum . "<br/>";

江南孤鹜

赞同来自:

$sq="SELECT value FROM table WHERE q_id='".$am."'"; 
$result=mysqli_query/$link,$sq/;
while/$row=mysqli_fetch_assoc/$result// {
$sum += $row['value'];
}
echo "<p>Sum: ".$sum."</p><br/>";
//$am ='2';
//$link -- connection to the data base


请放置
$am ='2';

在操作员面前 select, 并确保您使用的连接到数据库
$link


您将根据该价值收到总金额。
q_id


我测试了代码并工作正常。

小姐请别说爱

赞同来自:

您需要在您的请求上添加一个组。 最后,添加以下内容


GROUP BY q_id

要回复问题请先登录注册