谁知道如何获得数字总和?
例如我有mysql列名包.
Package
3
4
1
3
4
Run Code Online (Sandbox Code Playgroud)
如果包3,则值应为usd 5,如果包4,则值应为usd 10,如果包1,则值应为usd 1,依此类推.
所以上面的总值应该是=> 5 + 10 + 1 + 5 + 10 = 31
那我如何在PHP中得到它的总和?
我试过array_sum ..但它给了我错误,我不是非常专家的PHP ..请帮助我
提前感谢.
获取数据库来完成工作:
select sum(CASE WHEN package = 3 THEN 5 ELSE 0 END)
+ sum(CASE WHEN package = 4 THEN 10 ELSE 0 END)
+ sum(CASE WHEN package = 1 THEN 1 ELSE 0 END) AS total
from table_name
Run Code Online (Sandbox Code Playgroud)
正确的方法是,如果你有多个值,可以修改表格以包含金额字段,这样你就可以:
select sum(amount) from table_name
Run Code Online (Sandbox Code Playgroud)
或者,让另一个表包含值(包,数量)之间的关系,然后执行
select sum(package_amount)
from table_name, lookup_values
where table_name.package = lookup_values.package
Run Code Online (Sandbox Code Playgroud)
或者,如果你真的想在PHP中这样做:
$amount = array(3=>5, 4=>10, 1=>1); // define the amount of each value
$result = mysql_query("SELECT id FROM table_name");
$sum = 0;
while ($row = mysql_fetch_assoc($result))
{
$sum += $amount[ $row['id'] ];
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
15439 次 |
最近记录: |