Tengo una duda en una consulta con JOINS, debería devolver 2 resultados y sin embargo devuelve 4...
No lo entiendo, si la pruebo en MySQL funciona bien, pero en Symfony no:
Código:
DevuelveSELECT v.id, v.matricula, vt.descripcion_vehiculo, vt.id FROM vehiculos AS v JOIN vehiculos_tipos AS vt ON v.id = vt.id WHERE v.id_usuario = 70845
1 4467CGH Furgoneta 1
2 4468CGI Motocicleta 2
Pero En Symfony:
Código PHP:
$query = $em->createQuery(
'SELECT partial vt.{id,descripcionVehiculo},
partial v.{id,matricula}
FROM IPRestBundle:Vehiculos v
JOIN IPRestBundle:VehiculosTipos vt
WITH v.idVehiculosTipo = vt.id
WHERE v.idUsuario = :idUsuario')
->setParameter('idUsuario', $idUsuario);
$datosVehiculosMensajero = $query->getResult();
Código:
Array ( [0] => IP\RestBundle\Entity\Vehiculos Object ( [id:IP\RestBundle\Entity\Vehiculos:private] => 1 [idUsuario:IP\RestBundle\Entity\Vehiculos:private] => [idVehiculosTipo:IP\RestBundle\Entity\Vehiculos:private] => [matricula:IP\RestBundle\Entity\Vehiculos:private] => 4467CGH [seguro:IP\RestBundle\Entity\Vehiculos:private] => [fechaProximaItv:IP\RestBundle\Entity\Vehiculos:private] => [vehiculoPrincipal:IP\RestBundle\Entity\Vehiculos:private] => ) [1] => IP\RestBundle\Entity\VehiculosTipos Object ( [id:IP\RestBundle\Entity\VehiculosTipos:private] => 1 [descripcionVehiculo:IP\RestBundle\Entity\VehiculosTipos:private] => Furgoneta ) [2] => IP\RestBundle\Entity\Vehiculos Object ( [id:IP\RestBundle\Entity\Vehiculos:private] => 2 [idUsuario:IP\RestBundle\Entity\Vehiculos:private] => [idVehiculosTipo:IP\RestBundle\Entity\Vehiculos:private] => [matricula:IP\RestBundle\Entity\Vehiculos:private] => 4468CGI [seguro:IP\RestBundle\Entity\Vehiculos:private] => [fechaProximaItv:IP\RestBundle\Entity\Vehiculos:private] => [vehiculoPrincipal:IP\RestBundle\Entity\Vehiculos:private] => ) [3] => IP\RestBundle\Entity\VehiculosTipos Object ( [id:IP\RestBundle\Entity\VehiculosTipos:private] => 3 [descripcionVehiculo:IP\RestBundle\Entity\VehiculosTipos:private] => Coche ) )
No lo entiendo
¿Por qué?
Muchas gracias