如何使用laravel where子句和created_at

时间:2017-04-15 14:57:11

标签: php mysql laravel eloquent php-carbon

我想使用laravel db query或Eloquent ORM选择数据库上的所有数据。所以我想要从创建之日起3天以外的所有数据。数据' A'创建于15日我16日进来查看,我不会看到数据' A'但我可能会看到超过3天或等于3天的其他人。如果我在18日或19日回来,我应该看到Data' A',显然因为它现在超过3天或等于。 所以我写了这个代码不能在

下面工作
$users = DB::table('matched_users')->where( 'created_at', '>=',
 Carbon::now()->subDays(3)); 

所以任何人都可以为我纠正这个。

当我这样做时它起作用,但它向某人显示他的约会只是一天。所以代码不够

Data Name - created_at
ozil        21/04/2012 16:09:22
mark        21/04/2012 16:09:22
cyril       22/04/2012 16:19:21

所以今天是25/04/2012如果运行查询运行上面的查询,因为它是我得到所有结果。

但是如果将>=更改为<=,则结果为空集合

2 个答案:

答案 0 :(得分:0)

我猜你的意思是从他们创建的那天起超过3天#39;在这种情况下,查询应如下所示:

DB::table('matched_users')->where('created_at', '<=', Carbon::now()->subDays(3)); 

答案 1 :(得分:0)

$users = DB::table('matched_users')->whereDate( 'created_at', '<=', Carbon::now()->subDays(3))->get();

是编写代码的正确方法