簡體   English   中英

Laravel Eloquent 在當前月份和前 3 個月之間選擇

[英]Laravel Eloquent Select Between current month and previous 3 months

我正在嘗試構建一個查詢,它將選擇現在(當前月份)和前 3 個月之間我的數據庫中的所有記錄。

我的查詢有些工作,但我想忽略一個月中的哪一天。 目前,它也在選擇當前日期的最后幾個月,但我想忽略當前日期並使用月份的開始和結束。

這是我的查詢:

$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');

任何幫助,將不勝感激。 真是煩死我了!

我猜這可以解決問題

$dateS = Carbon::now()->startOfMonth()->subMonth(3);
$dateE = Carbon::now()->startOfMonth(); 
$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');

startOfMonth()從當月的第一個日期開始

使用碳:

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

您需要導入命名空間才能使用 Carbon:

use Carbon\Carbon;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM