我正在尝试在codeigniter中添加和乘以数组数据。我使用以下模型 best_outlet_chart()
function best_outlet_chart(){
$this->db->select(array(
'tbl_outlet_registration.outlet_name',
'tbl_sub_products.sub_product_price',
'tbl_order_products.quantity',
));
$this->db->from('tbl_outlet_registration');
$this->db->join('tbl_order_product_details', 'tbl_order_product_details.outlet_id=tbl_outlet_registration.outlet_id');
$this->db->join('tbl_order_products', 'tbl_order_products.order_id=tbl_order_product_details.order_id');
$this->db->join('tbl_sub_products', 'tbl_sub_products.sub_product_id=tbl_order_products.product_id','LEFT');
$query = $this->db->get();
return $query->result();
}
上面的代码返回一个像这样的数组
Array
(
[0] => stdClass Object
(
[outlet_name] => Outlet A
[sub_product_price] => 1000.00
[quantity] => 1
)
[1] => stdClass Object
(
[outlet_name] => Outlet A
[sub_product_price] => 50.00
[quantity] => 50
)
[2] => stdClass Object
(
[outlet_name] => Outlet B
[sub_product_price] => 10.00
[quantity] => 70
)
[3] => stdClass Object
(
[outlet_name] => Outlet B
[sub_product_price] => 10.00
[quantity] => 1
)
)
我想将[sub_product_price]分别与插座A 和其他插座中的[数量](sub_product_price *数量)相乘。不是所有的网点都在一起但是是分开的。可以请一些人帮我这个
谢谢! 安
我使用了以下代码,它不是单独给我所有出口的总数。
'SUM(tbl_sub_products.sub_product_price * tbl_order_products.quantity) as amount'
答案 0 :(得分:0)
由于我没有数据库表结构,因此我准备了一个单独的表格,其中包含您提到的列。
CREATE TABLE `tbl_outlet` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`outlet_name` varchar(255) NOT NULL,
`sub_product_price` double(10,2) NOT NULL,
`quantity` int(11) NOT NULL,
PRIMARY KEY (`id`)
)
你可以使用这样的东西来获取你的结果
SELECT outlet_name, SUM( (
`sub_product_price` * `quantity`
) ) AS `total_amount`
FROM `tbl_outlet`
GROUP BY `outlet_name`