如何获取指定日期范围的值?
Posted
技术标签:
【中文标题】如何获取指定日期范围的值?【英文标题】:how to get the values of specified date range? 【发布时间】:2017-08-11 10:42:25 【问题描述】:我正在尝试从表中检索今天的值,在我的表中我创建了_at 列,这是插入行时自动分配的时间戳。我还有一个 send_at 列,我在其中手动插入日期时间,当我使用范围查询 send_at 时它可以工作,但是当我查询 created_at 列时,我什么也得不到。
$campaigns = SmsCampaign::whereBetween('created_at', array('2017-03-20 12:00:00','2017-03-20 23:59:00'))->paginate(10);
return view('sms_campaign.smscampaign')->with('campaigns', $campaigns);
型号:
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class SmsCampaign extends Model
protected $table = 'sms_campaign';
protected $primaryKey = 'id';
//public $timestamps = false;
protected $fillable = [ 'campaign_name', 'content', 'phone_no_list', 'send_time', 'status', 'merchant_id', 'send_type'];
【问题讨论】:
【参考方案1】:通过 Carbon 实例:
SmsCampaign::whereBetween('created_at', [
Carbon::parse('2017-03-20 12:00:00'),
Carbon::parse('2017-03-20 23:59.00')
])->paginate(10);
【讨论】:
感谢 Alexey Mezenin 的答案,我试过了,我仍然一无所获 相同的代码适用于“send_at”列,但不适用于“created_at” @Alexey Mezenin 表格是手动创建并由模型连接的,请检查我的问题,我已为您附上表格created_at
也应该是 timestamp
。
是的,它之前也是时间戳,我只是再次更改它以进行测试。还是什么都没有:(以上是关于如何获取指定日期范围的值?的主要内容,如果未能解决你的问题,请参考以下文章
如何根据日期范围在 Stripe 中获取费用(交易)详细信息