【问题标题】:Multiple WHERE using QueryBuilder使用 QueryBuilder 的多个 WHERE
【发布时间】:2013-03-08 18:32:23
【问题描述】:

使用以下内容时,仅将最后一个 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 调用?

【问题讨论】:

    标签: symfony doctrine-orm query-builder


    【解决方案1】:

    你可以像这样使用->andWhere

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

    【讨论】:

    • 您实际上并不需要andWhere 之前使用->where。你总是可以使用->andWhere();
    猜你喜欢
    • 2020-08-01
    • 2015-01-31
    • 2011-09-27
    • 1970-01-01
    • 1970-01-01
    • 2018-11-15
    • 1970-01-01
    • 2017-03-22
    • 1970-01-01
    相关资源
    最近更新 更多