我试图让那些30分钟老今天有一个叫smsed值字段中的所有记录= 0。
我所试图做的就是让所有的记录,我有今天的日期数据库中,超过30min以上。
$data = DB::table('applicant')->whereRaw('AppDate < (NOW() - INTERVAL 30 MINUTE)')->where('smsed','=',0)->limit(5000)->get();
上面有哪些做的就是让所有的记录在数据库中,并不仅是今天。
我试图让那些30分钟老今天有一个叫smsed值字段中的所有记录= 0。
我所试图做的就是让所有的记录,我有今天的日期数据库中,超过30min以上。
$data = DB::table('applicant')->whereRaw('AppDate < (NOW() - INTERVAL 30 MINUTE)')->where('smsed','=',0)->limit(5000)->get();
上面有哪些做的就是让所有的记录在数据库中,并不仅是今天。
这是因为你只要求它为超过30分钟旧记录,不包括任何将其限制到今天。
你可以使用类似whereBetween
:
$data = DB::table('applicant')
->whereBetween('AppDate', [Carbon\Carbon::now()->startOfDay(), Carbon\Carbon::now()->subMinute(30)])
->where('smsed', '=', 0)
->limit(5000)
->get();
或者,如果你只是想保持你的SQL函数,你可以这样做:
$data = DB::table('applicant')
->whereRaw('AppDate < (NOW() - INTERVAL 30 MINUTE)')
->whereRaw('DATE(AppDate) = CURDATE()')
->where('smsed','=',0)
->limit(5000)
->get();
希望这可以帮助!