原则:不可能在columnA和columnB之间添加

时间:2017-07-19 08:02:20

标签: doctrine api-platform.com

有了这个提示它完美无缺,但现在我有另一个问题

我想设置一个'andWhere'clausel,并带有以下声明:AND 351 between columnA and columnB

我尝试使用以下PHP代码:

$rootAlias = $queryBuilder->getRootAlias()[0];
$queryBuilder->andWhere(sprintf(:value between columnA and columnB ));
$queryBuilder->setParameter('value', '351');
But if I try this, I get the following error from doctrine:

[Syntax Error] line 0, col 52: Error: Expected =, <, <=, <>, >, >=, !=, got 'between'

似乎无法添加此where子句。还有其他选择可以将其添加到哪里吗?

1 个答案:

答案 0 :(得分:0)

之间应该像这样使用:

$queryBuilder->andWhere(sprintf(%s.columnA between :value1 and :value2), $queryBuilder->getRootAlias()[0]);

如果你想测试值351在columnA和columnB中,你应该在它是ID的集合时进行IN。