Trong SQL đã tạo, bạn cần chọn cột mà bạn nhóm theo và bạn cần gọi hàm get () sau groupBy
hoặc nếu không bạn sẽ gọi groupBy
trên bộ sưu tập, không phải đối tượng trình tạo truy vấn. Vì vậy, bạn sẽ có thể làm:
Transaction::selectRaw('transactionType.category, sum(amount) as amount')
->with('transactionType')
->groupBy('transactionType.category')
->get();
Hoặc Ít Hùng biện hơn
DB::table('transaction')
->join(
'transaction_type',
'transaction_type.id',
'=',
'transaction.transaction_type_id'
)->selectRaw('transationType.category, sum(amount)')
->groupBy('transactionTyle.category')
->get();