Doctrine querybuilder - выберите запрос с объединением "многие ко многим" в доктрине

Я пытаюсь создать запрос выбора, чтобы сделать индекс с возможностью поиска. Проблема в том, что всякий раз, когда я выбираю атрибут для объединенного класса, я получаю только первый результат из всех возможных. Я попытался взорвать массив, но пока безуспешно.

Пример

        $query = $em->getRepository(Person::class)->createQueryBuilder('p')
        ->Select('p.id', 'p.name')
        ->join('p.books', 'i')
        ->addSelect('i.bookname')
        ->groupBy('p.id')
        ->getQuery()->getResult();

Это возвращает массив с его / ее id, name и одним (первым) bookname для каждого человека. Я не могу понять, как получить все booknames, разделенные запятой или тому подобное. Есть идеи, как этого добиться?

Зачем здесь groupBy?

M Khalid Junaid 11.07.2018 08:04

Без GroupBy я сохраняю (полу) повторяющиеся строки в моем индексе, которые, в свою очередь, изменяют результаты при поиске в индексе.

Dirk J. Faber 11.07.2018 11:17
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
2
27
0

Другие вопросы по теме