necesito para llevar a cabo esta consulta:Symfony2 subconsulta dentro Doctrina gestor de la entidad
SELECT * FROM (SELECT * FROM product WHERE car = 'large' ORDER BY onSale DESC) AS product_ordered GROUP BY type
En Symfony2 utilizando el gestor de la entidad.
Mi generador de consultas básica sería:
$query = $em->getRepository('AutomotiveBundle:Car')
->createQueryBuilder('p')
->where('pr.car = ?1')
->andWhere('pr.status = 1')
->orderBy('pr.onSale', 'DESC')
->setParameter(1, $product->getName())
->groupBy('p.type')
->getQuery();
, pero no puedo encontrar la manera de poner en una subconsulta para esto.
He intentado hacer una consulta independiente y unirse a ella como:
->andWhere($query->expr()->in('pr.car = ?1',$query2->getQuery()));
pero me sale:
Call to undefined method Doctrine\ORM\Query::expr()
creo que esta solución está ignorando límite en @cerad subconsulta. E.g $ qbGameId-> setMaxResults (20) y cuando imprime $ qbGames-> getDQL() no verá el límite en la subconsulta. – EnchanterIO
Una posible solución: http://stackoverflow.com/questions/15877287/symfony2-doctrine-expr-subquery-error?answertab=active#tab-top – EnchanterIO