estoy haciendo un sistema para alquiler de inmuebles, en el cual tengo 2 tablas
una para los inmuebles y otra para las reservas que tiene los siguientes campos
res_id
res_inm_id
res_start_date
res_start_date
estado (que pueden ser 0=reservado, 1=bloqueado, 2=bajo consulta)
Bien ahora supongamos que quiero buscar todos los inmuebles del tipo 1 (id: 89,78,75,66) que no este reservados ni bloqueados entre el 02-12-2010 y el 08-12-2010 y en la tabla reserva tengo los inmuebles:
id 89 con una reserva del 31-11-2010 al 01-12-2010 estado 0
id 89 con una reserva del 03-12-1010 al 06-12-2010 estado 1
id 89 con una reserva del 08-12-2010 al 11-12-2010 estado 0
id 78 con una reserva del 03-12-2010 al 07-12-2010 estado 0
id 66 con una reserva del 03-12-2010 al 07-12-2010 estado 2
yo intento usar la siguiente query:
Código MySQL:
esa query no me esta devolviendo correctamente los datos, ya que me devuelve los inmuebles 89 y 78 en vez de los inmuebles 66 y 75. Por lo que he notado esto me lo hace porque en el rango de fecha que le paso para buscar hay algunos dias por ejemplo 2 que estan "libres" pero el siguiente día no, y en vez de no devolverlo porque estaría reservado me la trae igual.Ver original
Ya nose como poder solucionarlo.
Espero que me puedan dar una mano.
Desde ya muchas gracias