Subquery Doctrine Could not find class
I am trying to create a query like this one:
$q = Doctrine_Query::create()
->select('p.nombre')
->addSelect('(select count(*) from alojamiento a left join
localidad l on a.localidad_id=l.id where p.id=l.provincia_id and
a.activo=true)')
->from('provincia p');
but it fails: error 500, class a could not be found.
AND:
$q = Doctrine_Query::create()
->select('nombre')
->addSelect('(select count(*) from alojamiento left join localidad on
alojamiento.localidad_id=localidad.id where
provincia.id=localidad.provincia_id and alojamiento.activo=true)')
->from('provincia');
results in: SQLSTATE [42S22]: Column not found: 1054 Unknown column "a.localidad_id" in clause "on".
Any help would be greatly appreciated!
+2
a source to share
1 answer
Assuming you have alojamiento.localidad relationship set up in your doctrine models, you can try this:
$q = Doctrine_Query::create()
->select('p.nombre')
->addSelect('(select count(*) from Alojamiento a
left join a.Localidad l
where Provincia.id = Localidad.provincia_id
and l.activo=true) as count')
->from('Provincia p');
0
a source to share