我正在尝试构建一个查询,该查询将在现在(当前月份)和前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');
任何帮助将不胜感激。这真让我烦恼!
答案 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;