有没有一种方法可以在Laravel 6.0的子选择上使用聚合器?

时间:2019-10-09 17:22:22

标签: laravel eloquent

例如:

return Order::addSelect(['total_amount' => Product::select('price')
    ->whereColumn('order_id', 'orders.id')
    ->sum('price');
])->get();

我无法使其正常工作。当您使用聚合器时,orders.id列在查询中不可用。

1 个答案:

答案 0 :(得分:0)

尝试在子查询中使用selectRaw()

return Order::addSelect(['total_amount' => Product::selectRaw('sum(price)')
    ->whereColumn('order_id', 'orders.id');
])->get();