Php Laravel 5:如何根据日期检索记录?
我有一个名为Php Laravel 5:如何根据日期检索记录?,php,laravel,eloquent,laravel-5,Php,Laravel,Eloquent,Laravel 5,我有一个名为entries的表,它的created\u在被定义为DATE类型。例如,我如何获得3月15日的记录 我尝试过的 $post = Entry::where(\DB::raw('DATE(created_at)'),'=',date('2015-03-15'))->get()->toJSON(); 但它返回空结果 迁移 Schema::create('entries', function(Blueprint $table) {
entries
的表,它的created\u在
被定义为DATE
类型。例如,我如何获得3月15日的记录
我尝试过的
$post = Entry::where(\DB::raw('DATE(created_at)'),'=',date('2015-03-15'))->get()->toJSON();
但它返回空结果
迁移
Schema::create('entries', function(Blueprint $table)
{
$table->increments('id');
$table->integer('intern_id');
$table->integer('company_id');
$table->longText('content');
$table->date('created_at')->unique();
$table->date('updated_at')->unique();
});
目前有3条记录的日期分别为2015-03-15
、2015-03-19
和2015-03-20
使用此
$post = Entry::where("created_at","2015-03-15")->get()->toJSON();
您可以使用以下表格:
$post = Entry::where('created_at', '>=', '2015-03-15')->get()->toJSON();
碳更新
$date = \Carbon\Carbon::create(2015, 3, 13, 0, 0, 0);
$u = Entry::where('created_at', '>=', (string) $date)
->where('created_at', '<', (string) $date->addDays(1))
->get()
->toJSON();
$date=\Carbon\Carbon::create(2015,3,13,0,0,0);
$u=Entry::where('created_at','>=,(string)$date)
->在哪里('created_at',它仍然返回一个空结果。下面是SQL:select*from'entries',其中'created_at'=2015-03-15
,但是,当我在两者之间添加=
登录时,它只返回应该返回所有3条记录的最新记录,因为所有3条记录的日期都是>=3月15日。的数据类型是什么de>created_date
?嘿,将您的答案更新为原始答案,我会将您的答案标记为正确答案。我转到您的原始答案并再次尝试,结果成功了。我想我一开始重新键入了您的错误。很抱歉。我们可以看到一些示例数据吗?还有,什么是表迁移项?@Chris question按要求编辑。您不能吗ry:Entry::where('created_at','>=','2015-03-15 00:00:00')->get()
?它只获取日期为2015-03-20
的最新记录。它应该已经获取了所有3条记录,对吗?无论如何,我只想获取日期为2015-03-15
的记录。对于相等的记录,您可能需要添加一个附加子句,因为日期在laravel中存储为时间戳。因此=2015-03-15 00:00
和<代码>好吧,如果你能用碳素更新你的答案,我会很高兴的