доктрина: выборка всех объектов, родитель которых находится в списке - PullRequest
0 голосов
/ 16 февраля 2012

предположим, у меня есть два объекта article и comment.Я хотел бы получить все комментарии, для которых article.id имеет значение IN (1,2,3,4).Каков наилучший способ достичь этого?Я вынужден использовать JOIN?Прямо сейчас у меня есть что-то вроде этого;

dql = "SELECT c FROM Comment c LEFT OUTER JOIN c.article a WHERE a.id IN :articles ORDER BY a.id ASC";
$query = $this->entityManager->createQuery($dql);
$query->setParameter("articles", array(1,2,3,4));

Я не проверял этот запрос, но я считаю, что что-то подобное должно работать, но было бы неплохо написать что-то вроде статей c.article IN (без JOIN)

1 Ответ

0 голосов
/ 16 февраля 2012

Это работает, AFAIK:

SELECT c FROM Comment c WHERE c.article IN(:articles)
$query->setParameter('articles', array(1,2,3,4));
...