2013-03-07 62 views
2

的日期時間列的查詢結果,我有一個類似的查詢:如何篩選基於在Symfony2的DQL

$em->createQuery(
    'SELECT t FROM myTestBundle:User t WHERE t.userId = :username AND 
    t.tokenCreatedtime > (NOW() - INTERVAL 800 MINUTE)' 
); 

(NOW() - INTERVAL 800 MINUTE)不DQL工作。有沒有其他辦法可以實現這一目標?

+0

實現* *什麼特別?由於DQL不正確,因此也不清楚你想要做什麼。你還有哪些errro? – hakre 2013-03-07 12:23:24

+0

可能重複[間隔1個月不工作與symfony2學說?](http://stackoverflow.com/questions/10041513/interval-1-month-not-working-with-symfony2-doctrine) – 2013-03-11 10:12:51

回答

2

我會建議你創建一個佔位符,並通過DateTime對象

$q = $em->createQuery(
    'SELECT t FROM myTestBundle:User t WHERE t.userId = :username AND 
    t.tokenCreatedtime > :createdTime ' 
); 
$q->setParameter(':createdTime',new \DateTime("-800 minute") 

而且您可能要創建\DateTime對象爲new \DateTime("-800 minute")

+0

@Ocramius感謝您的編輯 – Sethunath 2013-03-08 05:09:16