> Faqs > problema con consulta sql

problema con consulta sql

Buenas, Ante todo, gracias por vuestra ayuda y tiempo y espero que me podais ayudar. Llevo un par de dias dandóle vueltas al tema para encontrar la mejor solución. Os explico: Tengo 3 tablas definidas de la siguiente manera: bapp_propiedades (id,descripcion,img,estado,propietario) bapp_tarifas (id, maxdias, mindias, preciopordia, validodesde, validohasta) bapp_reservas (id, diaentrada, diasalida, totaldias, totalreserva, estado) donde la tabla bapp_propiedades guarda los apartamentos que existen, la tabla bapp_tarifas guarda las tarifas que cada apartamento tiene y cada uno de estos puede tener varias tarifas segun temporada alta o baja, fines de semana, etc... y estan definidas mediante un periodo de fechas y finalmente la tabla bapp_reservas que guarda un historial de reservas realizadas para cuando un cliente desee mirar la disponibilidad podamos consultar si es posible o no. la cuestion es que mediante una consulta sql me gustaria calcular y mostrar las tarifas con el precio final teniendo en cuenta que: - en el rango de fechas que introduce el usuario pueden haber mas de una tarifa - las tarifas estan acotadas por un maximo i minimo de dias ademas del periodo de validez entonces aunqe este dispobible debe cumplir ese minimo o maximo de dias - las propiedades pueden estar reservadas para esas fecha (se debe comprobar en la tabla bapp_reservas) estoy abierto a otros posibles planteamientos para solucionar este problema...asi que cualquier idea sera bienvenida : ) habia pensado con un inner join pero la verdad es que no veo la luz. espero vuestras respuestas. un saludo a todos, petergil

Responder la pregunta
Editar Hacer otra preguntaPreguntar

Respuestas

hola mira primero debes tener en cuenta la relación que existe que existe entre tus identidades(Tablas), yo veo lo siguiente: tabla de propiedades(las casas): esta tiene una relación de uno a varios, tanto con la tabla tarifas como con la tabla reservas, pues una propiedad puede tener varias tarifas como también puede tener varias reservas. lo anterior nos dice que debemos tener un campo idPropiedad en la tabla propiedad (tu ya lo tienes), ahora en las tablas reserva y tarifas si bien tienen un tienes un id, para identificar las registros de esas tablas, te falta agregar un campo donde vayas guardando el id de la propiedad a la que pertenece esa reserva o tarifa, eso es lo que ta va a permitir relacionar las tablas, ahora cuando quieras ver por ejemplo una consulta que muestre las reservas de una propiedad deberás hacer lo siguiente: SELECT aqui pones los campos que quieres mostrar de las tablas FROM bapp_reservas WHERE bapp_reservas.IdPropiedades=id de la prop que quieres ver

cephei