3

我正在尝试这段代码,但我一直遇到错误

$q = $this->_em->createQueryBuilder('p')
    ->select('p')
    ->from('ClendarRecipeBundle:RecipePlan', 'p')
    ->leftJoin('p.recipeCalendars', 'c')
    ->groupBy('c.recipePlan')
    ->having('p.portions > SUM(c.portions)')
    ->orHaving('SUM(c.portions) IS NULL')
    ->getQuery();

当 SUM(c.portions) 为 NULL 时,第一个没有选择它,所以我尝试添加 orHaving 但 symfony2 给了我以下错误:

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

我尝试了几种不同的写作方式,你们有什么好的建议我可以尝试吗?我可以尝试 RAWS Sql,但我更喜欢 QueryBuilder 中带有对象的代码。

4

1 回答 1

1

它应该是:

SUM(c.portions) != 0
于 2012-12-28T08:17:39.650 回答