Как выполнить сумму с Laravel в красноречивых отношениях - PullRequest
0 голосов
/ 12 ноября 2018

У меня есть таблица сведений, где есть связь с таблицей продуктов, в таблице сведений у меня есть поле product_id.

Я пытаюсь умножить количество, отображаемое в таблице сведений, и цену, отображаемую в таблице продуктов, использованную DB ::raw, но получаю ошибку столбца, не найденную.

QueryScope в Деталье Модель

 $query->with(['product' => function ($query) {
            $query->select('id', 'name', 'price');
        }])
        ->select('*', DB::raw('SUM(count*products.price) as fullcount'))
        ->groupBy('product_id');

1 Ответ

0 голосов
/ 12 ноября 2018

Используйте JOIN:

$query->select('product_id', DB::raw('SUM(count*products.price) as fullcount'))
    ->join('products', 'details.product_id', '=', 'products.id')
    ->groupBy('product_id');
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...