laravel 查询计算平均值

laravel queries calculating average

我想要整个 table 一月份所有销售额的平均值。我的 date_sold 的格式是 y/m/d。我可能有很多记录,例如 2016-01-23、2015-01,14、2017-01-05 都有他们的销售额。 我想获得一种或多种特定药物在 1 月份销售的平均销售额。到目前为止,这是我的控制器,但它只选择了第一条记录

$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();

添加分组:

$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();