2017-01-12 3 views
0

テーブル全体で1月のすべての売上の平均が必要です。私のdate_soldはy/m/dの形式です。私は多くのレコード、例えば2016-01-23,2015-01,14,201-01-05を販売しているかもしれません。 1月に販売された特定の薬剤や薬剤の売上の平均を求めたい。今のところ、これは私のコントローラであるが、それは最初のレコードだけlaravel queries averageを計算する

$drug = $request->get('drug'); 
$stocks = DB::table('sales') 
->join('drugs', 'drugs.id', '=', 'sales.drug_id') 
->select('sales.*','drugs.name', DB::raw ('AVG(sales.quantity_sold) as average_sales')) 
->whereIn('drug_id', $drug) 
->whereMonth('complete_sold','=', Carbon::today()->month) 
->get(); 
+0

'$のdrug'が含まれていますか? –

答えて

0

を選んでいるGROUPBYを追加します。

$drug = $request->get('drug'); 
$stocks = DB::table('sales') 
->join('drugs', 'drugs.id', '=', 'sales.drug_id') 
->select('sales.*','drugs.name', DB::raw ('AVG(sales.quantity_sold) as average_sales')) 
->whereIn('drug_id', $drug) 
->whereMonth('complete_sold','=', Carbon::today()->month) 
->groupBy('drugs.id') 
->get();