使用QueryBuilder的多个WHERE

时间:2013-03-08 18:32:23

标签: symfony doctrine-orm query-builder

使用以下内容时,只有最后一个where被添加到我的查询中;

$qb = $this->getEntityManager()->createQueryBuilder();

$qb->select(array('qi'))
    ->from('Table:Qi', 'qi')
    ->where("qi.content = " . $content->getId())
    ->where("qi.queue = " . $child->getQueue()->getId());

我必须这样做才能注意到两者

$qb->select(array('qi'))
    ->from('Table:Qi', 'qi')
    ->where("qi.content = " . $content->getId() . 
                 " AND qi.queue = " . $child->getQueue()->getId());

这似乎不对?如何使用第一种方法进行多次where调用?

1 个答案:

答案 0 :(得分:21)

您可以像这样使用->andWhere

->where("qi.content = " . $content->getId())
->andWhere("qi.queue = " . $child->getQueue()->getId());