2013-12-18 26 views
1

我有一个SQL查询字符串到我的数据库如何使用MySQL的方法DATE_ADD,DATE_FORMAT在Zend的Framework2

我希望这个MySQL SQL可以找到数据库行创建时间加一天的时间更少现在

sql ='SELECT * FROM `order` WHERE (DATE_ADD(DATE_FORMAT(`create_date`, '%Y-%m-%e %H:%i:%s'), INTERVAL 24 HOUR) <= now()) 

我知道ZF1代码

ZF1

function test(){ 
    $select = $this->select(true)->setIntegrityCheck(false); 
    $select->where("DATE_ADD(DATE_FORMAT(`om_created`, '%Y-%m-%e %H:%i:%s'), INTERVAL 24 HOUR) <= now())); 
    $data = $this->fetchAll($select); 
} 
+0

你会得到什么? –

+0

为什么您正在尝试使用DATE_ADD,DATE_FORMAT?你期待什么结果? – ripa

+0

你的第二个DATE_FORMAT中的“+ 30”是什么?我从来没有见过这样的代码 –

回答

0

试试这个:

SELECT * FROM `order` WHERE DATE_ADD(create_date, INTERVAL 24 HOUR) <= NOW() 

OR

SELECT * FROM `order` WHERE DATE_ADD(create_date, INTERVAL 1 DAY) <= NOW() 
+0

谢谢,原本可能是这个角色,我只是有一点'符号 –

+0

别客气... –

0

您可以使用类似:

SELECT * FROM表,其中date> = DATE_SUB(NOW(),间隔1个月)

在ZF1你可以写这样的东西:

$select->from('tablename') 
->where('date >= DATE_SUB(NOW(), INTERVAL 1 month)');