我有一个Laravel查询,看起来像这样
$users = DB::table("users")
->select('id')
->where('accounttype', 'standard')
->get()->all();
Run Code Online (Sandbox Code Playgroud)
它正在工作并返回所有标准帐户的ID,我试图将其限制为仅返回过去30天(创建用户的日期作为时间戳存储在“ created_at”中)的结果
最好在查询中执行此操作,还是稍后再处理结果?
您可以在whereDate
子句中使用carbon :
use Carbon\Carbon;
$users = DB::table("users")
->select('id')
->where('accounttype', 'standard')
->whereDate('created_at', '>', Carbon::now()->subDays(30))
->all();
Run Code Online (Sandbox Code Playgroud)
如注释中所述,请在查询中进行尽可能多的操作,直到发现性能问题或查询变得不可读为止。
归档时间: |
|
查看次数: |
1983 次 |
最近记录: |