Как отсортировать Doctrine DQL Query по номеру или членам отношения?
Я пытаюсь создать запрос для извлечения объектов из базы данных Doctrine, отсортированной по количеству членов определенного отношения один-ко-многим.
Более конкретно: у меня есть две сущности: личность и федерация. Человек может быть членом одной федерации (лицо имеет отношения «федерация»), и федерация может иметьn люди (Федерация как «люди»).
Я хотел бы создать DQL-запрос, который бы возвращал список федераций, упорядоченный по количеству членов этой федерации. Что-то в этом роде:
SELECT f FROM AcmeStatsBundle:Federation f ORDER BY [number of members of f.people]
Это было бы первым шагом. Существует еще один второй шаг, который я не знаю, если это возможно сделать с помощью одного запроса, который будет фильтровать членов отношения до подсчета. Вот так:
SELECT f FROM AcmeStatsBundle:Federation f ORDER BY [number of (f.people p where p.attr = value)]
Этот второй будет оптимальным результатом, но первый удовлетворит мои потребности, если второй случай не выполним в одном запросе.
Заранее спасибо.