У меня следующий запрос:
$query = $this->getEntityManager()->createQuery('
SELECT u, p, m
FROM MyCoreBundle:User u
JOIN u.programmes p
JOIN u.motivation m
');
$result = $query->getResult();
Я хочу ограничить объекты мотивации, возвращаемые для каждого пользователя, как результат этого второго запроса, который я использую в другом месте (в репозитории мотивации):
$query = $this->getEntityManager()->createQuery('
SELECT m FROM MyCoreBundle:Motivation m
WHERE m.user = :user
ORDER BY m.date DESC');
$query->setParameter('user',$user);
$query->setFirstResult(0);
$query->setMaxResults(1);
//@TODO if there is not result recorded for the user, return sth which indicates this
return $query->getResult();
Есть ли способ ограничения и ограничения мотивации в первом запросе или лучший подход?