2012-01-11 50 views
0

我有以下查询:在Doctrine2中查询期间获取相关实体的ID?

$qb = $this->em->createQueryBuilder() 
      ->select(array('p','c' ,'sc')) 
      ->from('Project\Entity\Product', 'p') 
      ->innerJoin("p.category", "c") 
      ->innerJoin("p.subcategory", "sc") 
      ->where("p.available != 0") 
      ->orderBy("p.create_date") 
      ->addOrderBy("p.id") 
      ->setMaxResults($limit); 

在一个结果,我想只能得到与产品相关实体(类别和子类别)的ID的。

我该如何做到这一点?

回答

1

恐怕你不能那样做。 您可以使用fetch joins并获取完全加载的对象或只加载该对象并获取未初始化的集合(这需要再次初始化一个查询)。