【问题标题】:Select where date falls within range选择日期在范围内的位置
【发布时间】:2011-01-19 00:28:57
【问题描述】:

Codeigniter/PHP:

这是我当前的数据库查询:

$pass_check = $this->CI->db->select('code')->from('coupons')->where(array('title'=>'Booyah'))->get();
$pass_check = $pass_check->result_array();

还有另外两个字段:“exp_date”和“start_date”。这些代表优惠券应该在什么时候可用,什么时候不应该。

如何只选择数据库中适用日期范围内的代码/优惠券?

这有意义吗?

【问题讨论】:

    标签: php codeigniter select date


    【解决方案1】:

    在两个日期之间选择值的 SQL 语句大致如下:

    SELECT code 
    FROM coupons 
    WHERE title = 'Booyah' 
    AND CURRENT_DATE BETWEEN start_date and exp_date;
    

    我相信您可以对 CodeIgniter 进行适当的替换。

    AKA,如果 start_date 小于 今天,不明白,如果今天是 在 exp_date 之后没有得到它。

    但我假设您的意思是“例如,如果今天小于 start_date,则不要获取它,如果今天大于 exp_date,则不要获取它。”

    【讨论】:

      【解决方案2】:

      给你: $today = 今天的日期。

      $today = date();    
      $pass_check = $this->CI->db->select('code')->from('coupons')->where(array('title'=>'Booyah'))->$this->db->where("$date BETWEEN start_date and exp_date")->get();
      $pass_check = $pass_check->result_array();
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2021-07-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-04-02
        • 2019-09-05
        相关资源
        最近更新 更多