大家看看这样写查询有没有问题
$stat = Auth::user()->appsStat();
$allFlow = $stat->select(DB::raw('sum(flow) as result'))->value('result');
$tmpQuery = clone $stat;
$monthFlow = $tmpQuery->where('month', Carbon::now()->format('Y-m'))->select(DB::raw('sum(flow) as result'))->value('result');
$tmpQuery = clone $stat;
$weekFlow = $tmpQuery->where('week', Carbon::now()->format('Y-W'))->select(DB::raw('sum(flow) as result'))->value('result');
$tmpQuery = clone $stat;
$dayFlow = $tmpQuery->where('date', Carbon::now()->toDateString())->select(DB::raw('sum(flow) as result'))->value('result');
这是公司目前项目的后台管理系统,有一个界面,需要显示【总流水】【月流水】【周流水】【今日流水】,数据来源一张表 stat,关联 User Model。
蛋疼的是 where 语句和 groupBy 语句,在链式调用的影响下,会累加,所以我不得不每次查询前 clone 一个原始对象,虽然程序正常,但这样写感觉不优雅,各位有何解?
推荐文章: