Select 在 doctrine 中使用 findAll 的不同结果
Select distinct results using findAll in doctrine
我可以使用 findAll()
函数 select 不同的值吗?
我正在尝试:
$province = $em->getRepository("FrontendBundle:Store")->findAll(array('distinct' => true));
不过好像不行。
findall 不支持这种行为,为了即时进行查询(最好在单独的存储库中 class),您可以按照以下步骤操作:
/** @var $qb \Doctrine\ORM\QueryBuilder*/
$qb = $em->getRepository("GerlaFrontendBundle:Store")->createQueryBuilder("p");
$province = $qb->select("p")
->distinct(true)
->getQuery()
->getResult();
希望对您有所帮助
$province = $em->getRepository("FrontendBundle:Store")->findBy(array('distinct' => true));
也看到这个http://symfony.com/doc/current/book/doctrine.html#fetching-objects-from-the-database
祝一切顺利
如果您想使用 findAll() 并使其不同,请覆盖实体存储库文件中的 findAll() 并将此方法添加到其中。
public function findAll() {
return $this->findBy(array(), array(array('distinct' => TRUE));
}
我主要用它来设置 findAll() 的顺序,但它也适用于 distinct。
我可以使用 findAll()
函数 select 不同的值吗?
我正在尝试:
$province = $em->getRepository("FrontendBundle:Store")->findAll(array('distinct' => true));
不过好像不行。
findall 不支持这种行为,为了即时进行查询(最好在单独的存储库中 class),您可以按照以下步骤操作:
/** @var $qb \Doctrine\ORM\QueryBuilder*/
$qb = $em->getRepository("GerlaFrontendBundle:Store")->createQueryBuilder("p");
$province = $qb->select("p")
->distinct(true)
->getQuery()
->getResult();
希望对您有所帮助
$province = $em->getRepository("FrontendBundle:Store")->findBy(array('distinct' => true));
也看到这个http://symfony.com/doc/current/book/doctrine.html#fetching-objects-from-the-database
祝一切顺利
如果您想使用 findAll() 并使其不同,请覆盖实体存储库文件中的 findAll() 并将此方法添加到其中。
public function findAll() {
return $this->findBy(array(), array(array('distinct' => TRUE));
}
我主要用它来设置 findAll() 的顺序,但它也适用于 distinct。