有没有人知道如何解决这个问题:
我的情况是我有CustomerTable, OrderTable, ItemsTable and DeliveryTable
客户可以下许多订单 订单可以包含许多项目
然而,这就是问题所在,如果我让1个项目,20..
我收到15
这些项目的数量,并希望将15/20
发送到顾客。目前我可以将DeliveryID
分配给单个项目,但其中包含所有20
。
所以我的问题是我需要一张中间表还是我在这里找不到明显的方法?
答案 0 :(得分:1)
然后,您可以通过提取所有投放线来查找订单行是否已完成。
Select
( select name from items where id = ol.itemid ) as itemname,
ol.quantity as quantity_ordered,
( select sum(quantity) from deliverylines dl where dl.olid = ol.id ) as quantity_delivered
from orderlines ol
where orderid = <id>;