¿Cómo ordenar una consulta de Doctrine DQL por el número o los miembros de una relación?

Estoy tratando de crear una consulta para recuperar objetos de una base de datos de Doctrine, ordenada por el número de miembros de una relación específica de uno a varios.

Más específicamente: Tengo dos Entidades: Persona y Federación. Una persona puede ser miembro de una federación (la persona tiene una relación de 'federación'), y una federación puede tenern Personas (federación como relación de 'personas').

Me gustaría crear una consulta de DQL que devuelva la lista de federaciones, ordenada por cuántas personas son miembros de esa federación. Algo a lo largo de estas líneas:

SELECT f FROM AcmeStatsBundle:Federation f ORDER BY [number of members of f.people]

Ese sería el primer paso. Hay un segundo paso adicional, que no sé si es posible lograr con una sola consulta, que sería filtrar a los miembros de la relación antes del conteo. Al igual que:

SELECT f FROM AcmeStatsBundle:Federation f ORDER BY [number of (f.people p where p.attr = value)]

Ese segundo sería el resultado óptimo, pero el primero satisface mis necesidades, si el segundo caso no es factible en una sola consulta.

Gracias por adelantado.

Respuestas a la pregunta(2)

Su respuesta a la pregunta