Laravel获得多对多的范围

时间:2019-02-28 15:06:05

标签: php mysql laravel

我想过滤所有订购范围在此范围内的订单的用户

User::where('type','client')
->whereHas('orders',function ($query) use($min_orders,$max_orders){

})

任何解决方案?

1 个答案:

答案 0 :(得分:4)

您可以使用has()过滤器过滤出具有相关订单的最小和最大数量的用户

User::where('type','client')
    ->has('orders', '>=', $min_orders)
    ->has('orders', '<=', $max_orders)
    ->get()

See Querying Relationship Existence