我在尝试将此SQL查询转换为DQL时遇到了很多困难(我使用的是Symfony2)。
SELECT d.* FROM Document d JOIN DocumentType dt ON dt.id = d.document_type_id WHERE (d.dateFinal - INTERVAL dt.renewal SECOND) > NOW();"
非常感谢!
答案 0 :(得分:1)
您需要使用Document
和DocumentType
类的字段,而不是数据库字段。
join是通过命名文档的association field完成的(类似d.documenttype
)
对于那些MySQL日期函数:至少就我所知,你需要编写custom DQL functions。在该链接后面有一个INTERVAL
函数的示例。这可能是您希望执行本机SQL查询的地方。
SELECT d
FROM MyProject\Model\Document d
JOIN d.documenttype
WHERE [...your own DQL functions here...]