【问题标题】:How to filter a query result based on a date time column in symfony2 DQL如何根据 symfony2 DQL 中的日期时间列过滤查询结果
【发布时间】:2013-03-07 12:21:36
【问题描述】:

我有一个类似的查询:

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

(NOW() - INTERVAL 800 MINUTE) 在 DQL 中不起作用。还有其他方法可以实现吗?

【问题讨论】:

标签: php datetime symfony doctrine-orm dql


【解决方案1】:

我建议你创建一个占位符并传递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")

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-05-10
    • 1970-01-01
    • 2021-05-24
    • 1970-01-01
    • 2013-09-29
    • 1970-01-01
    • 1970-01-01
    • 2017-03-02
    相关资源
    最近更新 更多