如何获取指定日期范围的值?

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 中获取费用(交易)详细信息

如何使用活动记录查询sql以获取指定时间之间的日期

如何将使用日期范围选择器获得的值转换为两个单独的日期和时间?

如何获取日期范围内的缺失值?

php 从指定的日期范围中获取记录

如何在没有周末的情况下获取日期范围之间的所有日期?