Ver Mensaje Individual
  #3 (permalink)  
Antiguo 27/01/2012, 09:44
arqrym
 
Fecha de Ingreso: diciembre-2009
Mensajes: 125
Antigüedad: 15 años, 1 mes
Puntos: 7
Respuesta: Rango de fechas y consulta de disponibilidad

Cita:
Iniciado por quimfv Ver Mensaje
Código MySQL:
Ver original
  1. from Tabla1 t1
  2.     LEFT JOIN Tabla2 t2
  3.          ON t1.id=t2.idproducto
  4. where (( fecha_solicitada NOT BETWEEN t2.fecha1 AND t2.fecha2
  5. OR fecha_solicitada2 NOT BETWEEN t2.fecha1 AND t2.fecha2))
  6. OR (t2.fecha1 IS NULL AND t2.fecha2 IS NULL)

Creo....
Muchas gracias.. Crees bien. Me ha salido lo que quería, solo que he tenido un problema aún sin resolver.

Al hacer dicha consulta si me pisa alguna de las fechas en ese rango me devuelve que no está disponible, pero si el rango con el que realizo la búsqueda es mayor que el rango del producto no disponible me devuelve que sí esta disponible, cuando no lo es..

Me explico:

Producto A - No disponible entre (5/05/2012 y 10/05/2012)

Si yo realizo una búsqueda para el producto A por ejemplo entre ( 1/05/2012 y 8/05/2012) me devuelve que no está disponible. Es correcto.

Ahora bien si busco fechas entre ( 3/05/2012 y 12/05/2012) no toca el rango y por lo tanto me devuelve que sí está disponible, cuando no lo está...

En base a la consulta anterior alguna sugerencia para que no me devuelva el dato erróneo??

Muchas gracias de antemano..