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

Consulta SQL - 3 Tablas

Estas en el tema de Consulta SQL - 3 Tablas en el foro de Bases de Datos General en Foros del Web. Hola, Por favor necesito ayuda con una consulta sobre 3 tablas: La estructura principal es la siguiente: CLIENTES INCIDENCIAS ARCHIVOS IdCliente(c) IdIncidencia(c) IdIncidencia Nombre IdCliente ...
  #1 (permalink)  
Antiguo 05/04/2007, 08:43
 
Fecha de Ingreso: abril-2007
Mensajes: 1
Antigüedad: 17 años, 9 meses
Puntos: 0
Busqueda Consulta SQL - 3 Tablas

Hola,

Por favor necesito ayuda con una consulta sobre 3 tablas:

La estructura principal es la siguiente:

CLIENTES INCIDENCIAS ARCHIVOS
IdCliente(c) IdIncidencia(c) IdIncidencia
Nombre IdCliente Ruta
NomCliente +
+

Relaciónes: CLIENTES.IdCliente-INCIDENCIAS.IdCliente
INCIDENCIAS.IdIncidencia-ARCHIVOS.IdIncidencia

Supongamos que en la tabla CLIENTES hay 15 registros en la tabla INCIDENCIAS hay 10 registros y en la tabla ARCHIVOS hay 5 registros.
La consulta que tengo que hacer me debería devolver todas las incidencias(10) con los datos de los clientes y en 2 de las 10 incidencias la RUTA(c:\..) en las otras 8 el campo RUTA es "".

Todos los intentos que hice me devolvían el producto cartesiano de las 3 tablas o solamente 2 incidencias, las 2 con el campo RUTA lleno.

Por favor si me pueden ayudar, estoy un poco desesperado...

Gracias y saludos,
  #2 (permalink)  
Antiguo 06/04/2007, 09:17
 
Fecha de Ingreso: mayo-2003
Ubicación: Buenos Aires
Mensajes: 97
Antigüedad: 21 años, 7 meses
Puntos: 0
Re: Consulta SQL - 3 Tablas

No se si entendi mal pero esto debería funcionar :

Select * From INCIDENCIAS I Inner Join Clientes C
on I.idcliente = C.idcliente
Left outer Join Archivos A
On I.Idincidencia = A.idincidencia

Trae todas las incidencias que tengan clientes (o sea 10) , despues las junto con archivos, al ser un left outer join me va a seguir trayendo las 10 incidencias y de archivos me va a traer aquellos que tengan una incidencia.

Las incidencias que no tengan archivos las va a traer igual pero con los campos de la tabla archivos en null
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 07:18.