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

Como lo hago?...

Estas en el tema de Como lo hago?... en el foro de Bases de Datos General en Foros del Web. Hi, Tengo 2 tablas 1.- La primera es donde tengo un catalogo de departamentos. 2.- La segunda es donde guardo las reservaciones. Ambas estan relacionadas ...
  #1 (permalink)  
Antiguo 28/02/2002, 01:29
Avatar de urjose  
Fecha de Ingreso: diciembre-2001
Mensajes: 5.286
Antigüedad: 22 años, 11 meses
Puntos: 1
Como lo hago?...

Hi,

Tengo 2 tablas

1.- La primera es donde tengo un catalogo de departamentos.

2.- La segunda es donde guardo las reservaciones.

Ambas estan relacionadas por una clave IdApartamento

Ahora bien lo que quiero saber es como obtengo los departamentos que no tienen reservacion.

Espero me puedan ayudar...

Gracias :(
  #2 (permalink)  
Antiguo 28/02/2002, 08:20
Avatar de Webstudio
Colaborador
 
Fecha de Ingreso: noviembre-2001
Ubicación: 127.0.0.1
Mensajes: 3.499
Antigüedad: 23 años
Puntos: 69
Re: Como lo hago?...

A ver si esto te puede ayudar, o al menos, encaminarte hacia otra solución:

Select a.campos from apartamentos a LEFT JOIN reservaciones r ON a.Id=r.ApartamentoId WHERE r.Id IS NULL

Eso creo que te devolvería las filas que no tienen un "match" con la otra tabla.

Saludos.

<hr><font size=2 face="verdana">- Pablo Daniel Rigazzi (Webstudio)
<font size=1 color="#333333">COORDINADOR PROYECTO REGIONALIZACION ARGENTINA
Visita <a href="http://www.web-studio.com.ar" target="_blank">Web Studio</a> - Tutoriales Photoshop</fo
  #3 (permalink)  
Antiguo 16/03/2002, 15:10
Avatar de urjose  
Fecha de Ingreso: diciembre-2001
Mensajes: 5.286
Antigüedad: 22 años, 11 meses
Puntos: 1
Re: Como lo hago?...

Hola Webstudio. gracias por responderme, ya habia leido tu mensaje desde el dia que lo posteaste pero hasta hoy pue probar... lo solucione así

SELECT * FROM APARTAMENTOS WHERE IDAPARTAMENTO NOT IN(SELECT IDAPARTAMENTO FROM RESERVAS)

saludos y gracias nuevamente
  #4 (permalink)  
Antiguo 16/03/2002, 18:12
 
Fecha de Ingreso: agosto-2001
Mensajes: 25
Antigüedad: 23 años, 3 meses
Puntos: 0
Re: Como lo hago?...

Urjose, tu query no es el optimo estas haciendo dos full select a las tablas, creo que debes seguir el ejemplo de Webstudio (hacer Join), o si lo haces con Access debería ser así:

SELECT All *
FROM Departamentos LEFT JOIN Reservaciones ON Departamentos.IdApartamento = Reservaciones.IdApartamento
WHERE (((Reservaciones.IdApartamento) Is Not Null));

Chau.
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 23:04.