我想使用带有NOT BETWEEN
语句的doctrine2 QueryBuilder(Symfony 3.4应用程序)进行MySQL查询。
该学说提供了->expr()->between(..)
但没有提供->expr()->notBetween(..)
有没有一种方法可以使用查询生成器来消除两者之间的关系。
如果可能,我不想使用本机查询或DQL查询。
注意:我认为可能的解决方案是使用->expr()->lt(..)
和/或->expr()->gt(..)
,但我想知道notBetween
是否可行。
谢谢
预期:
带有Doctrine2 QueryBuilder的NOT BETWEEN
SQL语句
答案 0 :(得分:0)
经过一些尝试,我找到了适合我的解决方案:
QueryBuilder提供了->expr()->not(...)
,因此在这种情况下,这是可能的:
$qb->exp()->not($qb->between('field', 'from', 'to')
SQL结果:
NOT (BETWEEN field from AND TO)