php - 如何在 eloquent 关系中使用 laravel 进行求和

标签 php mysql laravel laravel-5

我有一个详细信息表,其中与产品表有关系,在详细信息表中我有一个product_id字段。

我尝试将详细信息表中显示的数量与产品表中显示的价格相乘,使用DB::raw,但出现未找到列错误。

详细模型中的查询范围

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

最佳答案

使用JOIN:

$query->select('product_id', DB::raw('SUM(count*products.price) as fullcount'))
    ->join('products', 'details.product_id', '=', 'products.id')
    ->groupBy('product_id');

关于php - 如何在 eloquent 关系中使用 laravel 进行求和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53268676/

相关文章:

php - 阻止 Laravel 在异常中包含跟踪

php - 如何在 Laravel 5 中提供自定义验证消息

在数据库 ListView 中使用 href 的 PHP 语法错误

php - 在 cakephp 中使用 saveField 函数或其他函数插入多值

MySQL 截断不正确的 DOUBLE 值错误

php - 从数据库中裁剪值

mysql - 授予对具有特定前缀的多个表的权限

php - 如何从命令的 "php artisan list"隐藏默认 artisan 命令?

javascript - 返回 JSON 响应

Laravel 4 错误 : Undefined method shutdown