2014-09-10 30 views
0

SELECT payment_type, sum(total_received) FROM payments GROUP BY payment_type獲得通過支付類型

分組在MySQL支付的金額給我,我的所有支付類型與我總計爲該類型在一起的一個很好的列表。

-

Payment::all()->groupBy('payment_type')->sum('total_received')

雄辯

給我絕對沒有。

相當於上述MySQL查詢的Eloquent是什麼?

回答

0

最好將使用lists,因爲只有2要返回的屬性模型是多餘的:

Payment::selectRaw('payment_type as type, sum(total_received) as sum') 
    ->groupBy('type') 
    ->lists('sum', 'type'); 

// returns array, something like this: 
array(
    'type1' => '25', 
    'type2' => '50', 
    ... 
); 
0

下面是一個代碼塊將在雄辯工作:

$var = DB::table('payments') 
       ->select('payment_type', DB::raw('sum(total_received)')) 
       ->groupBy('payment_type') 
       ->get();