Doctrine加入了继承,使用queryBuilder禁用

时间:2015-12-13 21:57:10

标签: symfony doctrine-orm multiple-inheritance

我已将实体定义为:

@ORM\InheritanceType("JOINED")

哪种方法正常。

尝试执行简单查询时:

    $_builder = $this->_em->createQueryBuilder();
    $_builder->select('COUNT(us.id)')
             ->from('TbBundle:UserStatus', 'us')
             ->where('us.user = :user')
             ->setParameter('user', $user);

    return $_builder->getQuery()->getSingleScalarResult();

由于我的继承架构,Doctrine将生成一些带有一些不必要的左连接的查询。我可以用queryBuilder以任何方式禁用此查询吗?

目标:

我想使用查询构建器构建计数查询,但在没有任何继承影响的情况下执行它,因此执行的查询非常简单:

SELECT COUNT(us.id) FROM table_name us WHERE us.user_id = 34;

我可以使用原始sql编写它并从entityManager获取连接,但那很难看。

0 个答案:

没有答案