Laravel Eloquent选择当前月份和前3个月之间

时间:2017-09-12 09:20:00

标签: laravel laravel-5 eloquent php-carbon

我正在尝试构建一个查询,该查询将在现在(当前月份)和前3个月之间选择我的数据库中的所有记录。

我的查询有点奏效,但我想忽略该月的某一天。目前,它还选择了当前DAY的最后几个月数,但我想忽略当天并使用月份的开始和结束。

这是我的疑问:

$dateS = Carbon::now()->subMonth(3);
$dateE = Carbon::now(); 
$TotalSpent = DB::table('orders')
->select('total_cost','placed_at')
->whereBetween('placed_at',[$dateS,$dateE])
->where(['deleted' => '0', 'delivery_address_id' => $DeliveryAddress->id])
->sum('total_cost');

任何帮助将不胜感激。这真让我烦恼!

2 个答案:

答案 0 :(得分:4)

这将是我猜的诀窍

startOfMonth()

if params[:category] @category_id = Category.find_by(title: params[:category]).id @posts = Post.where(category_id: @category_id) end 从该月的第一个日期开始

答案 1 :(得分:0)

使用碳:

$data = Data::where("created_at",">", Carbon::now()->subMonths(6))->get();

您需要导入命名空间才能使用 Carbon:

use Carbon\Carbon;