我正在尝试从数据透视表中过滤数据。我的数据透视表是这样的:
Treatment_products:
treatment_product_id treatment_id product_id qty
65 29 29 22
66 29 26 12
67 22 34 26
我正在使用这个mysql查询,它提供了我想要的完美输出。
SELECT * FROM treatments_products
WHERE (product_id,qty) IN ((29,2334),(29,23343),(26,0)) AND treatment_id = 29
我想在laravel中做同样的事情。我在stackoverflow上找到了一个链接,其中有人提到使用wherepivot我试图这样做但是无法找到结果。
$treatments = Treatment::with(array('products'=>function($query) use ($whereIn){
$query->wherePivot('product_id,qty','IN',$whereIn);
}))->get();
有人可以告诉我,我做错了什么,或者我怎么能在laravel做到这一点?
感谢。