Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 19-11-2019
viverosjosem viverosjosem is offline
Baneado
 
Registrado: dic 2017
Posts: 64
Poder: 0
viverosjosem Va por buen camino
Question Sistaxis SQL, para obtener resultado esperado

Hola Amigos.
Tengo una aplicacion para reserva hotelera desarrollada en Delphi con Paradox. Estoy en un proceso de migracion a SQL con FireBird. Pero me e encontrado con algunos inconvenientes.

Necesito saber como deberia ser una consulta SQL, para determinar si existe disponibilidad (por Ejemplo), para el periodo comprendido entre el: 18-Feb-2020 al 20-Feb-2020. Lo cual nos deberia dar como resultado, segun la grafica, Deptos: 101 y 103, (que presentan dias libres para el periodo solicitado).

En paradox, lo tenia resulto. Pero no se como lograr esto con una consulta SQL, porque los datos requeridos no estan registrados en la tabla, pues, en la tabla solo se registran las fechas de reservas solicitadas. Y lo que requerimos es poder determinar la disponibilidad (osea, si hay dias libres para un periodo determinado).

Espero haberme explicado bien.

Les dejo una grafica de reserva mensual, para orientarse. Y una plantilla con los datos de las reservas registradas y representadas en la grafica.

[IMG]C:\Users\Zetrix\Pictures\Reservas.jpg[/IMG]

Cita:
+--------------------------------------------------------------------
1 2 3
!Depto! 123456789012345678901234567890
+-------+-----+-------------------------------------------------------
Enero ! 101 ! xxxxxxxxxx xxxxxxxxxxx
Febrero! 101 ! xxxxxxxxxxxxxxx xxxxxxxx
Enero ! 103 ! xxxxx xxxxxxxxxxxx xxxxx
Febrero! 103 ! xxxxxxxxxx xxxx xxx
Enero ! 105 ! xxxxx xxxxxxxxxx xxxxxx xx
Febrero! 105 ! xxxxxxxxxxx xxxxxx xx
+--------------------------------------------------------------------

+------------------------+--------------
! Archivo Rservas
+-----+-----------------+--------------
Depto.! Desde ! Hasta
+-----+------------+-------------------
101 ! 01-01-2020 ! 10-01-2020
101 ! 17-01-2020 ! 26-01-2020
101 ! 04-02-2020 ! 17-02-2020
101 ! 22-02-2020 ! 29-02-2020
103 ! 01-01-2020 ! 05-01-2020
103 ! 07-01-2020 ! 17-01-2020
103 ! 22-01-2020 ! 26-01-2020
103 ! 08-02-2020 ! 14-02-2020
103 ! 21-02-2020 ! 24-02-2020
103 ! 27-02-2020 ! 29-02-2020
105 ! 01-01-2020 ! 05-01-2020
105 ! 07-01-2020 ! 17-01-2020
105 ! 22-01-2020 ! 30-01-2020
105 ! 04-02-2020 ! 14-02-2020
105 ! 19-02-2020 ! 24-02-2020
105 ! 28-02-2020 ! 29-02-2020
+----+------------------+------------
Me habria gustado incrustar una imagen con la grafica. Pero no supe como hacerlo.

De antemano gracias.
Jose Miguel.

Última edición por Casimiro Notevi fecha: 19-11-2019 a las 10:56:48.
Responder Con Cita
  #2  
Antiguo 19-11-2019
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.042
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por viverosjosem Ver Mensaje
Me habria gustado incrustar una imagen con la grafica. Pero no supe como hacerlo.
Súbela a algún hosting y la enlazas, por ejempolo a https://subefotos.com/
Responder Con Cita
  #3  
Antiguo 19-11-2019
viverosjosem viverosjosem is offline
Baneado
 
Registrado: dic 2017
Posts: 64
Poder: 0
viverosjosem Va por buen camino
Thumbs up

Gracias Casimiro.
Aqui va el enlace con la imagen que queria mostrar.


Saludos.

Última edición por Casimiro Notevi fecha: 19-11-2019 a las 13:55:24.
Responder Con Cita
  #4  
Antiguo 19-11-2019
viverosjosem viverosjosem is offline
Baneado
 
Registrado: dic 2017
Posts: 64
Poder: 0
viverosjosem Va por buen camino
Angry

No. quedo muy mal, no funciono.
favor no tomar en cuenta. solo se prestara para confucion.

Saludos.
y Gracias.
Responder Con Cita
  #5  
Antiguo 19-11-2019
viverosjosem viverosjosem is offline
Baneado
 
Registrado: dic 2017
Posts: 64
Poder: 0
viverosjosem Va por buen camino
Vi en este mismo foro SQL.

Enlace: "Sintaxis SQL, por Jose Roman". Que incrustaron imagenes, directamente despues de la consulta.
Me podrian decir como hacer eso, para poder complementar mejor mi consulta.

Espero, no se pierda el sentido inicial de esta consulta, al preguntar como subir imagenes.

Gracias.
Saludos.
Responder Con Cita
  #6  
Antiguo 19-11-2019
Avatar de movorack
[movorack] movorack is offline
Miguel A. Valero
 
Registrado: feb 2007
Ubicación: Bogotá - Colombia
Posts: 1.346
Poder: 20
movorack Va camino a la famamovorack Va camino a la fama
Hola, solo con los datos que nos das no se podría obtener los que están disponibles.

Pensando que puede que tengas una tabla con las habitaciones a reservar, podría pensar que algo así puede serte de ayuda.

Código SQL [-]
SELECT * FROM (
  SELECT
    A.DEPTO, B.DESDE, B.HASTA
  FROM DEPTOS A
  LEFT OUTER JOIN RESERVAS B
    ON  A.DEPTO = B.DEPTO
    AND (B.DESDE BETWEEN '18/02/2020' AND '20/02/2020'
         OR B.HASTA BETWEEN '18/02/2020' AND '20/02/2020'
         OR '18/02/2020' BETWEEN B.DESDE AND B.HASTA
         OR '20/02/2020' BETWEEN B.DESDE AND B.HASTA)
) S1
WHERE DESDE IS NULL
ORDER BY DEPTO
__________________
Buena caza y buen remar... http://mivaler.blogspot.com
Responder Con Cita
  #7  
Antiguo 19-11-2019
viverosjosem viverosjosem is offline
Baneado
 
Registrado: dic 2017
Posts: 64
Poder: 0
viverosjosem Va por buen camino
Hola Movorac.
gracias por responder.

Efectivamente existe una archivo con la cantidad y tipos de departamentos por edificio. pero para determinar la disponibilidad de algun departamento, para un periodo solicitado, solo podemos evaluar lo que ya esta reservado, para poder determinar que dias aun estan libres, para poder realizar la reserva solicitada.

Aqui va un nuvo enlace con la imagen. espero que esta vez sirva.


Aqui la tabla con los departamentos, y dias ya reservados.
+------------------------+--------------
! Archivo Rservas
+-----+-----------------+--------------
Depto.! Desde ! Hasta
+-----+------------+-------------------
101 ! 01-01-2020 ! 10-01-2020
101 ! 17-01-2020 ! 26-01-2020
101 ! 04-02-2020 ! 17-02-2020
101 ! 22-02-2020 ! 29-02-2020
103 ! 01-01-2020 ! 05-01-2020
103 ! 07-01-2020 ! 17-01-2020
103 ! 22-01-2020 ! 26-01-2020
103 ! 08-02-2020 ! 14-02-2020
103 ! 21-02-2020 ! 24-02-2020
103 ! 27-02-2020 ! 29-02-2020
105 ! 01-01-2020 ! 05-01-2020
105 ! 07-01-2020 ! 17-01-2020
105 ! 22-01-2020 ! 30-01-2020
105 ! 04-02-2020 ! 14-02-2020
105 ! 19-02-2020 ! 24-02-2020
105 ! 28-02-2020 ! 29-02-2020
+----+------------------+------------

Gracias.
Saludos.
Jose Miguel.

Última edición por Casimiro Notevi fecha: 19-11-2019 a las 18:08:51.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Obtener el resultado de una consulta devric SQL 3 02-03-2010 06:01:17
Obtener resultado de una suma (SQL) radge OOP 7 19-08-2008 12:14:41
Como obtener éste resultado Gaim2205 SQL 1 19-02-2008 22:52:23
obtener el resultado de un QRExpr thorv Impresión 2 14-02-2007 20:58:53
Obtener el resultado de una consulta zurech MySQL 3 13-07-2005 11:33:11


La franja horaria es GMT +2. Ahora son las 10:22:29.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi