Foros del Web » Programando para Internet » PHP » Symfony »

LEFT OUTER JOIN Doctrine

Estas en el tema de LEFT OUTER JOIN Doctrine en el foro de Symfony en Foros del Web. Hola amigos, una pregunta, estoy en un repositorio con Symfony y tengo una consulta de 3 tablas, lo unico es que necesito hacer ya sea ...
  #1 (permalink)  
Antiguo 22/11/2013, 14:01
 
Fecha de Ingreso: noviembre-2013
Mensajes: 83
Antigüedad: 10 años, 5 meses
Puntos: 0
Pregunta LEFT OUTER JOIN Doctrine

Hola amigos, una pregunta, estoy en un repositorio con Symfony y tengo una consulta de 3 tablas, lo unico es que necesito hacer ya sea LEFT o RIGTH OUTER JOIN para que me traiga los datos completos de una tabla sin importar que en la otra no exista algun match en esa tabla..

Pero en Doctrine he encontrado algunos probemas ya que no se si la sintaxis la estoy usando mal y por eso me da error, pongo el codigo de mi consulta.

$dql = "SELECT M FROM ABCIsystemBundle:AbcMembers M LEFT JOIN ABCIsystemBundle:AbcStudents S ON (M.id=S.member) WHERE M.idCard LIKE '__02%' and M.status='active' and (M.id=S.member) and M.status='active'";

el error que me arroja es este
[Syntax Error] line 0, col 88: Error: Expected Doctrine\ORM\Query\Lexer::T_WITH, got 'ON'

creo que el error esta en el ON pero ya use el WITH pero me trae lo que hay coincidencia y yo necesito todos...

Ayuda por favor, me urge
  #2 (permalink)  
Antiguo 22/11/2013, 17:52
Avatar de masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 3 meses
Puntos: 845
Respuesta: LEFT OUTER JOIN Doctrine

Te sugiero que pases por la doc para ver que puedes y no puedes hacer

http://docs.doctrine-project.org/en/...age.html#joins

ON no es parte del DQL.

Saludos.
__________________
http://es.phptherightway.com/
thats us riders :)
  #3 (permalink)  
Antiguo 23/11/2013, 15:15
 
Fecha de Ingreso: noviembre-2013
Mensajes: 83
Antigüedad: 10 años, 5 meses
Puntos: 0
Pregunta Respuesta: LEFT OUTER JOIN Doctrine

Correcto eso vi en la documentacion pero igual aunq no usara el on no entiendo mucho los ejemplos que dan... Porque teniendo este ejemplo de la doc de doctrine
<?php
$query = $em->createQuery("SELECT u, a FROM User u JOIN u.address a WHERE a.city = 'Berlin'");
$users = $query->getResult();

la tabla user la renombra con un alias u, luego hace un join con que?? ese u.address (address) es la tabla o nose
  #4 (permalink)  
Antiguo 26/11/2013, 10:47
Avatar de lisandro Arg  
Fecha de Ingreso: octubre-2003
Ubicación: Cordoba, Argentina
Mensajes: 945
Antigüedad: 20 años, 6 meses
Puntos: 24
Respuesta: LEFT OUTER JOIN Doctrine

Cita:
luego hace un join con que?? ese u.address (address) es la tabla o nose
No te olvides que estas manejando entidades y no tablas, las entidades ya tienen sus relaciones por eso solo hace falta que le digas cual es la propiedad por la cual quieres hacer el join, en este caso u.address

Etiquetas: doctrine, join, left
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:23.