想要在查询中生成多个结果。
$now = Carbon::now();
$currentStartDay = $now->startOfDay();
$currentEndDay = $now->endOfDay();
$currentStartWeek = $now->startOfWeek();
$currentEndWeek = $now->endOfWeek();
$currentStartMonth = $now->startOfMonth();
$currentEndMonth = $now->endOfMonth();
$currentStartYear = $now->startOfYear();
$currentEndYear = $now->endOfYear();
$query = DB::table('transactions AS t');
$queryExpenseToday = $query;
$queryExpenseWeek = $query;
$queryExpenseMonth = $query;
$queryExpenseYear = $query;
dump($queryExpenseToday->whereBetween('t.created_at', [$currentStartDay, $currentEndDay])->toSql());
dump($queryExpenseWeek->whereBetween('t.created_at', [$currentStartWeek, $currentEndWeek])->toSql());
dump($queryExpenseMonth->whereBetween('t.created_at', [$currentStartMonth, $currentEndMonth])->toSql());
dump($queryExpenseYear->whereBetween('t.created_at', [$currentStartYear, $currentEndYear])->toSql());
问题和输出如下:
第一次转储
"select * from `transactions` as `t` where `t`.`created_at` between ? and ?"
第二次转储
"select * from `transactions` as `t` where `t`.`created_at` between ? and ? and `t`.`created_at` between ? and ?"
第三次转储
"select * from `transactions` as `t` where `t`.`created_at` between ? and ? and `t`.`created_at` between ? and ? and `t`.`created_at` between ? and ?"
第四次转储
"select * from `transactions` as `t` where `t`.`created_at` between ? and ? and `t`.`created_at` between ? and ? and `t`.`created_at` between ? and ? and `t`.`created_at` between ? and ?"
正在附加查询,如何停止?或者如何取消绑定最后一个绑定参数?
我正在使用 Laravel 5.6
寻找最佳答案。