In der generierten SQL müssen Sie die Spalte auswählen, nach der Sie gruppieren, und Sie müssen get() nach groupBy
aufrufen andernfalls würden Sie groupBy
aufrufen für die Sammlung, nicht für das Abfrage-Generator-Objekt. Sie sollten also in der Lage sein:
Transaction::selectRaw('transactionType.category, sum(amount) as amount')
->with('transactionType')
->groupBy('transactionType.category')
->get();
Oder weniger eloquent
DB::table('transaction')
->join(
'transaction_type',
'transaction_type.id',
'=',
'transaction.transaction_type_id'
)->selectRaw('transationType.category, sum(amount)')
->groupBy('transactionTyle.category')
->get();