Это сработало для меня, спасибо

я есть этот код Symfony, где он получает все категории, связанные с разделом блога в моем проекте:

$category = $catrep->createQueryBuilder('cc')
    ->Where('cc.contenttype = :type')
    ->setParameter('type', 'blogarticle')
    ->getQuery();

$categories = $category->getResult();

Это работает, но запрос включает дубликаты:

Test Content
Business
Test Content

Я хочу использоватьDISTINCT Команда в моем запросе. Единственные примеры, которые я видел, требуют, чтобы я написал сырой SQL. Я хочу избежать этого в максимально возможной степени, поскольку я пытаюсь сохранить весь мой код одинаковым, чтобы все они использовали функцию QueryBuilder, предоставляемую Symfony2 / Doctrine.

Я пытался добавитьdistinct() на мой запрос, как это:

$category = $catrep->createQueryBuilder('cc')
    ->Where('cc.contenttype = :type')
    ->setParameter('type', 'blogarticle')
    ->distinct('cc.categoryid')
    ->getQuery();

$categories = $category->getResult();

Но это приводит к следующей ошибке:

Неустранимая ошибка: вызов неопределенного метода Doctrine \ ORM \ QueryBuilder :: Different ()

Как мне сказать Symfony, чтобы выбрать разные?

Ответы на вопрос(3)

Ваш ответ на вопрос