2014-10-28 54 views
0

我有3个表,产品订单order_productorder_product Laravel数数是基于PRODUCT_IDORDER_ID地图产品和订单枢轴表。给定一个product_id,我想知道这个产品的总销售量,下面是我的想法:找出包含这个product_id的所有订单,并且如果任何订单的状态为完成,那么产品销售对于这个命令,现在应该如何使用 - > count()来编写我的查询?顺便说一句,我有所有的模型和关系设置。基于多个表

回答

2

试试这个:

Product::find(1)->orders()->where('orders.status', 'completed')->count() 
+0

包含给定的产品只有定货时应考虑,不可能每个人都完成的订单。 – Quasdunk 2014-10-28 09:55:58

+0

@Quasdunk对不起,错过了。更新... – lukasgeiter 2014-10-28 09:56:56

+0

什么是where子句中的“order”?它是型号名称吗?我的订单的型号名称是Order,在这种情况下,我应该使用Order而不是Order? – dulan 2014-10-28 10:01:01