Hola, tengo 3 tablas, regiones, provincias y localidades.
Siguiendo la lógica habitual en estos casos, localidades está relacionada con provincia (una provincia puede tener varias localidades) y a su vez provincias con regiones (una región puede tener varias regiones).
Yo necesito una consulta que me saque todas las localidades de una región. En MySql lo he hecho mil veces, pero aquí creo que me he complicado demasiado, por eso quiero ver si alguien me dice cómo se haría, porque seguro que no es difícil:
public function findLocalidadesRegion($region) { $em = $this->getEntityManager(); $query = $em->createQuery("SELECT l FROM AdminBundle:Localidad l WHERE (........ = :region)")->setParameter('region', $region); return $query->getArrayResult(); }
Gracias a todos de antemano.
Respuestas
Buenas, sería algo como:
$em->createQuery(" SELECT l FROM AdminBundle:Localidad l JOIN l.provincia p WHERE p.region = :region ") ->setParameter('region', $region);
Saludos!
@manuel_j555
14 julio 2015, 21:24
Exacto!!!
Muchas gracias Manuel. Todavía sigo pensando en MySQL...
@antoniocarvajal
15 julio 2015, 11:45