Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Oracle »

Duda/Problema con LEFT JOIN y múltiples tablas

Estas en el tema de Duda/Problema con LEFT JOIN y múltiples tablas en el foro de Oracle en Foros del Web. Hola Estoy intentando hacer una consulta como esta: Código PHP: SELECT A .*,  E . CAMPO3  FROM TABLA1 A ,  TABLA2 E LEFT JOIN TABLA3 F ON E . ID  = F . CAMPO2 WHERE A ...
  #1 (permalink)  
Antiguo 24/03/2008, 03:47
Avatar de javimartinez  
Fecha de Ingreso: marzo-2003
Ubicación: Leganés (Madrid)
Mensajes: 284
Antigüedad: 21 años, 7 meses
Puntos: 1
Pregunta Duda/Problema con LEFT JOIN y múltiples tablas

Hola

Estoy intentando hacer una consulta como esta:

Código PHP:
SELECT A.*, E.CAMPO3 
FROM TABLA1 A
TABLA2 E LEFT JOIN TABLA3 F ON E.ID =F.CAMPO2
WHERE A
.CAMPO1 E.ID
ORDER BY E
.ID 
sin embargo, al ejecutarla con el TOAD me dice "A: identificador no valido". Para probar he sustituido el A.* por A.ID y funciona perfectamente, es decir, en ese caso reconoce A:

Código PHP:
SELECT A.IDE.CAMPO3 
FROM TABLA1 A
TABLA2 E LEFT JOIN TABLA3 F ON E.ID =F.CAMPO2
WHERE A
.CAMPO1 E.ID
ORDER BY E
.ID 
y haciendo más pruebas, parece que el asterisco solo me funciona con las tablas que están en el left join (E y F), no funcionando con el resto de tablas. ¿Es este funcionamiento normal? ¿hay alguna forma de conseguir todos los campos que de una tabla que no esté en el left join? (aparte de ir poniéndolos de uno en uno, claro)

Gracias y un saludo
__________________
Javi Martínez

Web: Acertijolandia Blog: A Entretenerse
  #2 (permalink)  
Antiguo 24/03/2008, 11:02
Avatar de matanga  
Fecha de Ingreso: octubre-2007
Ubicación: España
Mensajes: 1.091
Antigüedad: 17 años
Puntos: 85
Re: Duda/Problema con LEFT JOIN y múltiples tablas

Hola,

Las dos consultas estan bien formadas, el parser no me devuelve ningun error

Código:
SQL> SELECT A.*, E.CAMPO3
  2  FROM TABLA1 A, TABLA2 E LEFT JOIN TABLA3 F ON E.ID =F.CAMPO2
  3  WHERE A.CAMPO1 = E.ID
  4  ORDER BY E.ID
  5  /

no rows selected

SQL> 
SQL> SELECT A.ID, E.CAMPO3
  2  FROM TABLA1 A, TABLA2 E LEFT JOIN TABLA3 F ON E.ID =F.CAMPO2
  3  WHERE A.CAMPO1 = E.ID
  4  ORDER BY E.ID
  5  /

no rows selected
  #3 (permalink)  
Antiguo 24/03/2008, 15:39
Avatar de kikolice  
Fecha de Ingreso: marzo-2004
Mensajes: 1.510
Antigüedad: 20 años, 8 meses
Puntos: 7
Re: Duda/Problema con LEFT JOIN y múltiples tablas

mmm me suena a que esta usando una version que todavia no soporta el left join, creo que era la 9
__________________
Blogzote.com :-) Mi blog
  #4 (permalink)  
Antiguo 25/03/2008, 01:14
Avatar de javimartinez  
Fecha de Ingreso: marzo-2003
Ubicación: Leganés (Madrid)
Mensajes: 284
Antigüedad: 21 años, 7 meses
Puntos: 1
Re: Duda/Problema con LEFT JOIN y múltiples tablas

Efectivamente, estamos utilizando la versión 9 de Oracle, pero el left join parece que si lo admite, o al menos funciona bien siempre y cuando no ponga el asterisco en las tablas que no forman parte de él. De ahí que me estrañara.

Gracias a los 2 por contestar

Un saludo :)
__________________
Javi Martínez

Web: Acertijolandia Blog: A Entretenerse
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 15:05.