我试图从一个表中进行选择,其中所选持续时间除以条目持续时间等于没有余数。
$qb = $em->createQueryBuilder()
->from('AcmeBlogBundle:Entry', 'e')
->andWhere(":duration % e.duration = 0")
->setParameter('duration', $duration);
这会返回错误:
[Syntax Error] line 0, col 226: Error: Expected =, <, <=, <>, >, >=, !=, got '%'
这在普通 SQL 中是可行的。有人知道如何使用 Doctrine 的查询生成器来做到这一点吗?
符号%
不是 DQL 运算符。尝试这个:
$qb = $em->createQueryBuilder()
->from('AcmeBlogBundle:Entry', 'e')
->andWhere("mod(:duration,e.duration) = 0")
->setParameter('duration', $duration);
或者阅读以下内容:http://docs.doctrine-project.org/projects/doctrine-orm/en/2.0.x/reference/dql-doctrine-query-language.html http://docs.doctrine-project.org/projects/doctrine-orm/en/2.0.x/reference/dql-doctrine-query-language.html12.5.1 段。
MOD(a, b) - Return a MOD b.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)