2014-05-05 70 views
3

我有一個DateTime字段的模型。 即使列是DateTime,我如何通過日期獲取所有條目?如何在字段爲datetime時按日期查找項目?

示例表汽車:

id; expiration 
1;2014-12-22 00:00:00 
2;2014-12-22 03:12:00 
3;2014-10-09 01:10:29 

如果我這樣做:

$this->Car->find("all", array('conditions' => array('expiration' => '2014-12-22'))) 

我得到的只有ID爲1(情節中字00:00:00)

項目

但我需要所有物品(1和2) 任何想法如何實現這一點?在MySQL我可以做這樣的事情:

SELECT * ... FROM..WHERE DATE_FORMAT(conditions, '%Y-%m-%d') = '2014-12-22' 

回答

4

試試這個

$this->Car->find("all", array('conditions' => array('DATE(ondate)' => '2014-12-22'))); 

這將產生

SELECT * ... FROM..WHERE WHERE DATE(ondate) = '2014-12-22' 
1

你需要更新你的查詢,如圖貝羅女:

$this->Car->find("all", array(
          'conditions' => array(
           'DATE(expiration)' => '2014-12-22' 
          ) 
         ) 
       ); 

在上面的查詢中,MySQL,因爲它是在使用你所提到的查詢現在只比較日期,而不是日期和時間。

相關問題