Laravel вычесть два withsum

Рейтинг: 0Ответов: 1Опубликовано: 15.05.2023
$vatr =Title::withSum('solds', 'quantity')->withSum('purchases', 'quantity')->get();

Есть такой запрос, как в этом запросе сделать так чтобы вместе с ними приходила их разность т.е. solds.quantity - purchases.quantity.

На одном из форумов посоветовали следующее решение

 $titles = Title::withSum('solds', 'quantity')
            ->withSum('purchases', 'quantity')
            ->selectRaw('SUM(purchases.quantity) - SUM(solds.quantity) as net_quantity')
            ->paginate(20);

Помогите с решением

Ответы

▲ 1

Может кому понадобится решение:

$titles = Title::withSum('solds', 'quantity')
            ->withSum('purchases', 'quantity')
            ->paginate(20)
            ->through(function ($item) {
                $item->left_in_stock = $item->purchases_sum_quantity - $item->solds_sum_quantity;
                return $item;
            });