2017-06-05 17 views
0

我想找出每个销售人员的销售表中的利润总额和平均值。如何正确使用总和和平均功能?如何编写正确的求和函数?

public function index() 
{ 
    $sales_data = Auth::user()->sales()->paginate(30); 
    $sum = $sales_data['sales']->sum('profit'); 
    $average = $sales_data['sales']->average('profit'); 
    $amount = $sales_data->total(); 
    return view('sales_page.index', ['user' => Auth::user()], compact('sales_data', 'amount', 'sum', 'average')); 
} 
+0

由于您正在分页,因此您只能获得分页集合的“平均值”和“总和”。 –

回答

0

在集合对象上运行集合函数。

使用collect()函数来包装您的$sales_data并使用count()而不是total()

public function index() 
{ 
    $sales_data = Auth::user()->sales()->paginate(30); 
    $sum = collect($sales_data['sales'])->sum('profit'); 
    $average = collect($sales_data['sales'])->average('profit'); 
    $amount = collect($sales_data)->count(); 
    return view('sales_page.index', ['user' => Auth::user()],compact('sales_data', 'amount', 'sum', 'average')); 
}