Pues mira, tomando en cuenta que es Sábado, hace mucho calor, no tengo una birra en la mano y además tengo hambre, pues no me hagas mucho caso, pero se me ocurre que puedes primero hacerle un select a tarifas agrupado por fechaDe y FechaA,m esto para que obtengas un registro por cada periodo.
Luego haces un ciclo, y por cada periodo ejecutas este query:
Código:
SELECT Distinct Top 1 Tarifas.FechaIni, Tarifas.FechaFin,
(SELECT Tarifas.Precio
FROM Tarifas
WHERE (((Tarifas.FechaIni)=#6/1/2006#) AND ((Tarifas.FechaFin)=#12/30/2006#) AND ((Tarifas.IDHabitaciones)=1)) ) as Sencilla,
(SELECT Tarifas.Precio
FROM Tarifas
WHERE (((Tarifas.FechaIni)=#6/1/2006#) AND ((Tarifas.FechaFin)=#12/30/2006#) AND ((Tarifas.IDHabitaciones)=2)) ) as Doble,
(SELECT Tarifas.Precio
FROM Tarifas
WHERE (((Tarifas.FechaIni)=#6/1/2006#) AND ((Tarifas.FechaFin)=#12/30/2006#) AND ((Tarifas.IDHabitaciones)=3)) ) as Triple,
(SELECT Tarifas.Precio
FROM Tarifas
WHERE (((Tarifas.FechaIni)=#6/1/2006#) AND ((Tarifas.FechaFin)=#12/30/2006#) AND ((Tarifas.IDHabitaciones)=4)) ) as Cuadruple
FROM Tarifas;
Claro, colocando el valor del campo periodo correspondiente en lugar de las fechas en código duro. y con eso formas tu tabla HTML. ¿qué? ¿que esta fea la solución?...pues si, pero funciona, es el chiste ¿o no?
Saludos