我正在尝试在 AngularJS 中创建一个组的总和。我正在使用 http 将结果放入 html 表中:
$http({method: 'GET', url: urlpurchasing}).success(function(data) {
$scope.purchasing = data;
})
我想创建一个名为“总库存”的新列,并为每个组添加所有“已售数量”,因此对于所有具有相同值的 Desc 我希望将“已售数量”相加。例如,底部的 3 个紫色行在“销售总量”列中会有“607”。
我尝试使用 angular for-each 遍历数据并将每个数据相加,但这涉及创建第二个数组,并且主表中的任何类型的过滤器或更改都会更改索引并混淆。感谢任何帮助。
编辑
这是我到目前为止所拥有的(但总数每次都在增加:
$http({method: 'GET', url: urlpurchasing}).success(function(data) {
var t = 0;
angular.forEach(data, function(obj){
if($scope.code == obj.GroupCode){
}
else
{
$scope.code = obj.GroupCode;
t = 0;
}
t = (t + parseInt(obj.QuantitySold));
obj.total = t;
});
$scope.purchasing = data;
})
这是 PHP :
<?php
require_once('sqlconnect.php');
$sqlQuery = "select StockCode,Description,QuantityInStock,QuantitySold,NetAmountSold,GroupCode,color from purchasing order by Description desc";
$result = $unity_connection->query($sqlQuery);
$json1 = array();
while($rows = mysqli_fetch_assoc($result)){
$json1[] = $rows;
}
echo json_encode($json1);
?>
我不使用 MySQL,但标准 SQL 应该在这里解决问题:
SELECT
purchasing.stockcode,
purchasing.description,
purchasing.quantityinstock,
purchasing.quantitysold,
purchasing.netamountsold,
purchasing.groupcode,
purchasing.color,
desc_summary.totalstock
FROM
purchasing join (select description, sum(quantitysold) as TotalStock from purchasing group by descrption) desc_summary on purchasing.description = desc_summary.description
ORDER BY purchasing.description DESC
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句