我正在尝试获取所有 30 分钟前的记录,并且今天的字段名为 smsed value = 0。
我想要做的是获取数据库中具有今天日期且早于 30 分钟的所有记录。
$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();
希望这可以帮助!
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句