Microsoft SQL Server 2000
Muy buenas, llevo días con la dichosa consulta y nada de nada, ¿alguien me
puede ayudar?
Planteamiento:
Hoteles que fijan temporadas (entre fechas), tienen tipos de habitaciones
(simple, doble, triple, .) y una cantidad disponible de esas habitaciones en
los días comprendidos en la temporada.
Ejemplo de datos almacenados
TemporadaOferta desde 01/01/2007 al 31/03/2007: indico día a día la
cantidad de habitaciones según el tipo
el 01/01/2007 -> 3 simples, 2 dobles
el 02/01/2007 -> 7 triples,
el 03/01/2007 -> 10 simples, 27 dobles, 44 triples y 21 cuadrúples
.
..
el 31/03/2007 ->
Veis más o menos los datos, las temporadas se pueden SOLAPAR (coincidir
algunas fechas), por supuesto existen muchas temporadas para cada hotel y
muchos hoteles
Diseño
Simplificando el diseño tengo la siguiente tabla
TablaCupos
[IDtemporada]
(almaceno un identificador para cada temporada creada)
[IDtipo]
(almaceno el tipo de habitación, simple, doble, triple, .)
[Fecha]
(el día concreto para saber que cantidad hay)
[Cantidad]
(el número de habitaciones disponibles ese día, para ese tipo y en esa
temporada)
(los dos ID's forman la clave COMPUESTA)
He de responder:
MALDITA CONSULTA QUE NO CONSIGO ESCRIBIR
(he de saber las temporadas)
¿Hay habitaciones libres en un determinado periodo, puedo mezclar/combinar
diferentes temporadas, pero que en conjunto haya disponibilidad?
Para aclarar un ejemplo1
Devuelve las temporadas para las existen habitaciones libres para unas
fechas determinadas, NO ES NECESARIO que para todos los días de mis
vacaciones los días que estén dentro de una temporada tenga habitaciones, es
decir, una temporada definida en enero y me voy de vacaciones del 7 a 14, y
el 10 de enero no hay habitaciones disponibles en esa temporada, pero en
otra temporada definida desde enero a febrero tiene habitaciones libres y en
particular el 10 de enero (que la otra no tenía tiene), PUES BIEN PUEDO
PASAR LAS VACIONES, unos días en la temporadaUno y otros en la temporadaDOS:
devuelveme esa dos temporadas que las necesito ¡!!
Si no pudiera, no me devuelvas nada
Ejmeplo2 con la misma idea del ejemplo1 pero sabiendo el transfondo de la
consulta
Vacaciones del 05/01/2007 al 10/01/2007, para cada uno de esos días necesito
TRES habitaciones simples y UNA habitación doble ¿qué temporadas cumplen
esto? -> OJO la misma idea que antes, que el conjunto de temporadas permitan
la estancia, unos días en una temporada y otros en otra, o quizás todos los
días en una temporada, me da igual, dame todos esas temporadas
Ejmeplo3:
Vacaciones del 10/01/2007 al 15/01/2007 necesito DOS habitaciones triples
Gracias de antemano!!!
Leer las respuestas