我有三个表:Orders、OrderAdditionalInfo、Invoices
我需要选择没有有效(或未取消)发票的(主要)订单。
领域:
订单->
OrderID int(11)
订购附加信息 ->
DetailID int(11)
OrderID int(11)
Variable varchar(255)
Value varchar(255)
发票 ->
InvoiceID int(11)
OrderID int(11)
Cancelled tinyint(4) //if cancelled is 1 then this invoice is invalid.
重要提示: 混淆一切的是:一个订单可以分为多个订单。
例如:
当我们用 OrderID 划分订单时:10
1- 订单 10 保留为主订单,并将 ID 为 11 的新订单添加到表中。(我们获得了新订单。)
2- 不幸的是,OrderAdditionalInfo 表中添加了一行:
OrderID: 11
Variable: "Main Order ID"
Value: "10"
3-因此,我们可以知道订单 11 是从订单 10 派生的。
您对选择匹配的订单有什么建议:
“主订单”(不是从另一个订单派生的)
和
“没有有效发票”