2011-05-16 82 views
0

我试图执行此查询来获取“横幅”之间的日期_开始和date_end。如何在CakePHP中查询两个日期范围的数据?

$current_date = date('Y-m-d'); 
$banners = $this->Banner->find('all', 
        array('conditions' => 
           array("date_start >= " => $current_date, 
           "date_end <= " => $current_date) 
        )); 

我已经尝试使用NOW()这似乎是造成问题,我用“AND”条件尝试和我也串联起来$ CURRENT_DATE查询(例如“DATE_START => “。$ current_date)

任何想法,我要错了吗?

编辑

设法得到它周围切换的条件下工作:

$banners = $this->Banner->find('all', array('conditions' => array("'$current_date' >=" >= "date_start", "'$current_date' <=" => 'date_end'))); 

回答

2

你应该改变你的公式

DATE_START < = $ CURRENT_DATE和 DATE_END> = $当前日期

可以说date_start是2011年1月5日 和DATE_END是2011年3月5日 和curr_date是2011年2月5日

通知,curr_date比起始日期更大,比END_DATE小,你的病情,你检查相反

+0

干杯 - 在我真正考虑到我的问题后,我才意识到这一点! – 2011-05-16 18:05:47