最近產品提了需求其中有個需求是:
有下單的最近三天,每天對應商品下單總貨量的三天求和;不足三天的,按實際統計
在不迴圈相加的情況下想到的做法是
$order_good = OrderGood::query()
->where('goods_id',$goods_id)
->orderBy('id', 'desc')
->limit(3)
->pluck('goods_num')
->toArray();
$data[$good->goods_id] = array_sum($order_good);
先將需要查詢的三條語句查詢處來,然後將pluck查詢需要的欄位,將結果要轉成陣列;
使用array_sum把所有值記錄總和 ,這樣不使用迴圈計算,減少了程式碼的臃腫;