【发布时间】:2013-02-08 17:20:51
【问题描述】:
当我想按 id 计算列的总和时,我遇到了一个小问题。
餐桌用品
id code name price quantity
522 123 Product 1 12 4
表 purchase_items
id product_id quantity
1 522 5
2 522 1
表 sale_items
id product_id quantity
1 522 1
2 522 1
功能代码点火器:
$products = $this->alerts->select('products.id as productid, products.code as code, products.name, products.price, sum(sale_items.quantity)')
->from('products');
$this->alerts->join('sale_items', 'products.id = sale_items.product_id');
$this->alerts->group_by("products.id");
$products = $this->alerts->select('products.id as productid, products.code as code, products.name, products.price, sum(purchase_items.quantity)')
->from('products');
$this->alerts->join('purchase_items', 'products.id = purchase_items.product_id');
$this->alerts->group_by("products.id");
$this->alerts->unset_column('productid');
foreach ($this->result_array() as $product)
{
$products[] = $product['record'];
}
return $products;
}
问题是
的结果purchase_items the result is 12
sale_items the result is 4
为什么要取 x 2 的结果?
感谢任何帮助。
【问题讨论】:
-
我认为my answer to this question 应该告诉你为什么......这是因为你基本上没有在组合中思考
标签: sql codeigniter