Foros del Web » Programando para Internet » ASP Clásico »

Consulta SQL Compleja Rango fechas y dos tablas

Estas en el tema de Consulta SQL Compleja Rango fechas y dos tablas en el foro de ASP Clásico en Foros del Web. Estoy intentando realizar un sistema de reservas de habitaciones para un hotel. Estoy usando una base de datos Microsoft access (Lo digo por el formato ...
  #1 (permalink)  
Antiguo 14/06/2005, 04:41
 
Fecha de Ingreso: mayo-2003
Mensajes: 866
Antigüedad: 21 años
Puntos: 0
Consulta SQL Compleja Rango fechas y dos tablas

Estoy intentando realizar un sistema de reservas de habitaciones
para un hotel.
Estoy usando una base de datos Microsoft access
(Lo digo por el formato de la consulta para los campos de fecha)

Quiero que el usuario selecione los valores de
dos variables cuando entra y cuandosale, por ejemplo:
cuandoentra="01/01/2005"
cuandosale="15/01/2005"

Tego una tabla llamada habitaciones con los siguientes campos:
idhabitacion
nombrehabitacion

Tego una tabla llamada reservas con los siguientes campos:
idreserva
fechaentrada
fechasalida
idhabitacion


1.-¿Como podria realizar una consulta que me diga para las fechas
que hay comprendidas entre cuandoentra y cuandosale, las habitaciones
que se encuentran disponibles para todo el periodo indicado?


2.-¿Como podria realizar una consulta que me diga para las fechas
que hay comprendidas entre cuandoentra y cuandosale, las habitaciones
que algun o algunos de los dias del periodo indicado no estan ocupadas, aunque si esten ocupadas otros dias del periodo indicado?
  #2 (permalink)  
Antiguo 14/06/2005, 06:29
Avatar de trasgukabi  
Fecha de Ingreso: septiembre-2004
Mensajes: 2.749
Antigüedad: 19 años, 8 meses
Puntos: 18
una cosa es responder dudas y otra muy diferente es ésto que preguntas.

http://www.desarrolloweb.com/manuales/9/#capitulos
  #3 (permalink)  
Antiguo 14/06/2005, 08:51
 
Fecha de Ingreso: mayo-2003
Mensajes: 866
Antigüedad: 21 años
Puntos: 0
Hola trasgukabi, cuando escribes
"una cosa es responder dudas y otra muy diferente es ésto que preguntas."
no se muy bien lo que quieres decirme.
Si lo dices porque estoy preguntando algo que es muy complejo, y que la solucion a mi pregunta no es simplemente:
se te olvido poner una " al final.
Tienes razon , pero no creas que digo, quiero realizar un sistema de reservas de habitaciones para un hotel y vengo a este foro y posteo mi pregunta para esperar a que me hagan mi trabajo.
LLevo unos pocos de dias liado con este asunto, y tengo un jaleo de Join, Left Join, Between, OR, AND, etc, etc, y no consigo realizar la consulta que quiero realizar, busco en mi ordenador toda la documentacion y ejemplos que tengo sobre consultas, busco en Google, busco por todas partes, leo, pruebo, y algunas veces consigo hacer lo que me he propuesto.
De todas formas si algun moderador opina que no deberia hacer este tipo de preguntas, que la retire del foro y ya no volvere a preguntar mas cosas complicadas para mi, por si acaso
Que te vaya Bien
pd:Ya habia mirado donde me sugieres, pero gracias por el link
  #4 (permalink)  
Antiguo 18/12/2007, 12:18
 
Fecha de Ingreso: diciembre-2007
Mensajes: 2
Antigüedad: 16 años, 4 meses
Puntos: 0
Re: Consulta SQL Compleja Rango fechas y dos tablas

Hola, mira yo tengo una consulta similar el único problema es que me repite los registros, te explico:

Tengo que hacer que me muestre los registros de todo el personal o de una sola persona entre dos fechas y lo hago de la siguiente forma:

$usuario_consulta = mysql_query("SELECT users.* FROM $sql_tabla". $compone ."ORDER BY user_id LIMIT 1") or die("Datos erroneos, intente de nuevo");

$usuario_consulta = mysql_query("SELECT tabla1.* FROM tabla1 LEFT JOIN tabla2 ON tabla1.user_id=tabla2.user_id WHERE tabla2.user_id=$variableid AND fecha BETWEEN '2007-12-01' AND '2007-12-13' ORDER BY user_id LIMIT 1") or die("Datos erroneos, intente de nuevo");

esto es para un usuario en particular, para buscar todo solo quita limit y tabla2.user_id

el LIMIT lo pongo por que me repite los datos tantas fechas tenga en ese usuario, se que no es lo conveniente y es lo que estoy buscando, como controlar eso, pero puede que te ayude un poco a guiarte.

si lo encuentro lo pongo, espero ayudarte aunque sea un poco.
  #5 (permalink)  
Antiguo 18/12/2007, 13:09
 
Fecha de Ingreso: diciembre-2007
Mensajes: 2
Antigüedad: 16 años, 4 meses
Puntos: 0
Re: Consulta SQL Compleja Rango fechas y dos tablas

Hola mira encontre la solución, la sentencia anterior esta bien solo hay que cambiar el ORDER BY por GROUP BY y listo en cualquiera de los dos casos quita el LIMIT, quedaria de la siguiente forma

//para consultar por persona y entre dos fechas

$usuario_consulta = mysql_query("SELECT tabla1.* FROM tabla1 LEFT JOIN tabla2 ON tabla1.id=tabla2.id WHERE tabla2.id=$varid AND fecha BETWEEN ''2007-12-01' AND '2007-12-13' GROUP BY user_id") or die("Datos erroneos, intente de nuevo");

//para consultar a todos entre dos fechas

$usuario_consulta = mysql_query("SELECT tabla1.* FROM tabla1 LEFT JOIN tabla2 ON tabla1.id=tabla2.id WHERE fecha BETWEEN ''2007-12-01' AND '2007-12-13' GROUP BY user_id") or die("Datos erroneos, intente de nuevo");

espero les sirva a alguien, hasta pronto.
  #6 (permalink)  
Antiguo 03/08/2013, 15:08
 
Fecha de Ingreso: junio-2013
Mensajes: 2
Antigüedad: 10 años, 10 meses
Puntos: 0
Información Respuesta: Consulta SQL Compleja Rango fechas y dos tablas

sqa212 como estas, como te fue con las consultas, sera que me puedes guiar ya que necesito algo parecido para un sistema de reservas.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:05.