处理所售产品数量的包装

时间:2017-12-05 10:42:26

标签: mysql sql

我有3个mysql表,如下所示:

 - product(product_id, product_name)
 - order(order_id, order_date)
 - order_detail(order_detail_id, product_id, order_id, quantity)

当我想要产品的总和时,我使用此查询

select order_detail.product_id, sum(order_detail.quantity)
from order_detail 
join order on order_detail.order_id=order.order_id
group by order_detail.product_id

这适用于简化订单,客户可以选择任意数量的产品并将其添加到购物车中。 但是,我现在遇到了添加packages的问题 所以我添加了一个新表

- Package_Items(package_id,item_id,item_quantity)

我怎样才能获得所有销售产品的SUM(无论他是否在包中)

例如我在表order_detail

 product_id   | quantity
--------------|-----------------------------
  1           | 2
  2           | 6
  3           | 1

和表Package_Items

 package_id   | item_id  | item_quantity 
--------------|-----------------------------
  1           | 3        |  7
  1           | 5        |  10

结果应该是

 product_id   | quantity
--------------|-----------------------------
  1           | 2
  2           | 6
  3           | 15
  5           | 20

0 个答案:

没有答案