2017-09-02 175 views
2

我需要将start_date与current_date进行比较,以便我可以找到特定日期的数据(换言之:当天的数据)。对于这一点,我使用这个查询将Start_date与SQL中的当前日期进行比较

$rs = $this->db->select('ult_camp.*') 
        ->order_by('ult_camp.start_date', 'desc') 
        ->from('ult_camp') 
        ->where('ult_camp.status', 'Active') 
        ->where('date(ult_camp.start_date)<=', date('Y-m-d h:m:s')) 
        ->get()->result(); 
    return $rs; 

但此查询我得到它的起始日期小于当前date.Please帮我得到这个数据。

任何帮助将不胜感激。 在此先感谢。

+0

'日期('年月日h:m:s')'....'m'是几个月而不是几分钟;使用'i'分钟 –

+0

而MySQL [date()](https://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html#function_date)函数仅返回'Ymd'存储日期值的一部分 –

回答

3

您可以添加另一个获取从当天12:00:00开始的日期的日期范围。

$rs = $this->db->select('ult_camp.*') 
       ->order_by('ult_camp.start_date', 'desc') 
       ->from('ult_camp') 
       ->where('ult_camp.status', 'Active') 
       ->where('date(ult_camp.start_date)<=', date('Y-m-d h:i:s')) 
       ->where('date(ult_camp.start_date)>=', date('Y-m-d 00:00:00')) 
       ->get()->result(); 
return $rs; 

这where子句应该翻译为:

date(ult_camp.start_date) <= '2017-09-02 08:55:20' AND date(ult_camp.start_date) >= '2017-09-02 00:00:00' 

注意:我 - >是分钟,米 - >是月份在PHP的日期格式

+0

谢谢它对我有用.. – user6891871

+0

太棒了!请将此标记为已回答!谢谢! – chad

相关问题