À la LIMITE avec doctrine 2?
J'essaie d'écrire une requête (avec sous-requête) mais je ne sais pas comment fixer une limite dans mon sous-requête.
Ma requête:
$query_ids = $this->getEntityManager()
->createQuery(
"SELECT e_.id
FROM MuzichCoreBundle:Element e_
WHERE [...]
GROUP BY e_.id")
->setMaxResults(5)
;
$query_select = "SELECT e
FROM MuzichCoreBundle:Element e
WHERE e.id IN (".$query_ids->getDql().")
ORDER BY e.created DESC, e.name DESC"
;
$query = $this->getEntityManager()
->createQuery($query_select)
->setParameters($params)
;
Mais ->setMaxResults(5) ne fonctionne pas. Pas de "LIMITE" dans la requête SQL. Pouvons-nous faire simple LIMITE avec doctrine 2 ?
- MySQL ne supporte pas encore 'LIMIT & DANS le/TOUTES les/TOUTES les/CERTAINS sous-requête'
- prouver le lien " doctrine ne prend PAS en charge
limit
danssubqyery
' est : github.com/doctrine/orm/issues/3979 donc utiliser direct natif de requête sql !
Vous devez vous connecter pour publier un commentaire.
ICI, dans la deuxième requête le résultat de la première requête doit être transmise ..
Notice: Array to string conversion
je peux essayer une coutume Hydratant pour retourner un tableau multidimensionnel et implosent que parce qu'il ne semble pas être un déjà construit qui fait que: docs.doctrine-project.org/en/2.1/reference/...- Je utiliser
Doctrine\ORM\Tools\Pagination\Paginator
pour cela, et il fonctionne parfaitement (doctrine 2.2).Votre setMaxResults($limite) doit être défini sur l'objet.
par exemple