Artikel hoe withCount te gebruiken in Laravel.
Met withCount tel je het aantal relaties. Bijvoorbeeld het aantal orders voor een product, dat kan er ongeveer zo uitzien
$products = Products::withCount('orders')->where('status', 1)->get();
Filteren op withCount
Stel dat je alleen de producten wilt hebben die een order hebben. Je kan dit doen met havingRaw
.
$products = Products::withCount('orders')->where('status', 1)->havingRaw('orders_count > 0')->get();
Has optie gebruiken
Hoef je niet het aantal orders te weten maar wil je wel filteren op het aantal orders, dan kan je ook has
gebruiken.
Bijvoorbeeld als je het aantal producten wilt weten die minimaal 3 orders hebben.
Products::has('orders', '>', 3)->where('status', 1)->get();