我想使用whereBetween來獲取日期間隔,created_date它工作正常:$data = Userorder::whereBetween('created_at', [$dateS->format('Y-m-d')." 00:00:00", $dateE->format('Y-m-d')." 23:59:59"])->get();但是我有另一個列名稱order_date,其中此列的日期格式為:星期五 Jan,24,2020,所以我想將其轉(zhuǎn)換為Y-m-d格式$dateS = new Carbon($startdate);$dateE = new Carbon($enddate);$data = Userorder::whereBetween('order_date', [$dateS->format('Y-m-d'), $dateE->format('Y-m-d')])->get();型:class Userorder extends Model{ protected $table = "userorders"; protected $fillable = [ 'order_number', 'product_id', 'order_time', 'order_date', 'product_qty', 'product_price', 'product_totalprice', 'totalprice', 'product_instruction', 'product_size', 'storeinfo_id', 'product_serve', 'user_id', 'user_distance', 'user_address', 'user_instruction', 'office_name', 'st_address', 'order_state', 'order_city', 'order_zipcode', 'gratuity', 'suite_floor', 'driver_ask', 'phone_number', 'paid', 'isdelivery', 'deliveredon', 'show', 'confirmed', 'isonline', 'houseaccount' ]; protected $primaryKey = 'id'; public $timestamps = true;
1 回答

守著星空守著你
TA貢獻1799條經(jīng)驗 獲得超8個贊
為了實現(xiàn)你所追求的目標,你應(yīng)該能夠?qū)aravel的iravel的whereRaw()方法與MySQL的STR_TO_DATE()函數(shù)(mysql日期格式字符串)結(jié)合使用:
Userorder::whereRaw('STR_TO_DATE(order_date, "%a %b,%d,%Y") between ? and ?', [$dateS->format('Y-m-d'), $dateE->format('Y-m-d')])->get();
話雖如此,如果可能的話,我建議更新您的表(和相關(guān)代碼),以便它實際上是一列而不僅僅是一個字符串。order_date
date
- 1 回答
- 0 關(guān)注
- 153 瀏覽
添加回答
舉報
0/150
提交
取消