Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 25-04-2012
Avatar de Vlady
Vlady Vlady is offline
Miembro
 
Registrado: ago 2005
Posts: 217
Poder: 19
Vlady Va por buen camino
duda sobre consulta

Amigos del club buenas a todos espero me puedan ayudar con la siguiente duda sobre una consulta que tengo SQL. primero trabajo con firebird 2.0 y delphi 7 mi problema es el siguiente:

Tengo una tabla de reservas donde tengo una fecha inicial y una fecha final y quiero saber en el momento de insertar un nuevo registro que no se encuentre una reserva en esas fechas tengo la siguiente consulta pero no me funciona cuando la nueva reserva esta unos días mas adelante que la fecha inicial y unos días mas atraz que la fecha final

Código SQL [-]
            SELECT ID FROM RESERVACION WHERE (CAST(fecha_inicio AS DATE)
            BETWEEN CAST(:FECHA1 AS DATE) AND CAST(:FECHA2 AS DATE)
            or (CAST(FECHA_FIN AS DATE)
            BETWEEN CAST(:FECHA1 AS DATE) AND CAST(:FECHA2 AS DATE))
            or (CAST(FECHA_INICIO AS DATE) <= CAST(:FECHA1 AS DATE) AND (CAST(FECHA_FIN AS DATE) >= CAST(:FECHA2 AS DATE))))
            CONFIRMAR = 'False'

la idea es que si no hay reservas para esas fechas devuelve la consulta vacía.

Gracias de antemano por la ayuda

Última edición por Vlady fecha: 25-04-2012 a las 02:20:51.
Responder Con Cita
  #2  
Antiguo 25-04-2012
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Firebird acepta IFF(), deberías pensar en esa posibilidad.
Saludos
__________________
Siempre Novato
Responder Con Cita
  #3  
Antiguo 25-04-2012
Avatar de Vlady
Vlady Vlady is offline
Miembro
 
Registrado: ago 2005
Posts: 217
Poder: 19
Vlady Va por buen camino
Caral gracias por responder pero como seria en la misma consulta SQL o en un procedimiento?
Responder Con Cita
  #4  
Antiguo 26-04-2012
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Se me ocurre algo asi:
No lo he probado.

Código SQL [-]
SELECT ID, IFF( fecha_inicio >= :Fecha_Reserva AND FECHA_FIN <= :Fecha_Reserva, 'Reservado', 'Libre' ) AS Reserva FROM RESERVACION

Seleccione el ID si la fecha de inicio es mayor que la de la reserva y menor que la de Fin, osea, entre las fechas.
Esto te dira si esta reservada esa fecha o libre, creo......
Saludos
__________________
Siempre Novato
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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
Duda con consulta sobre horas y medianas vivamotos C++ Builder 1 10-06-2008 11:17:15
Duda sobre consulta utopico SQL 3 13-09-2007 22:11:27
Duda sobre esta consulta alcides Varios 0 13-12-2006 18:20:55
Duda sobre una consulta carlos gonzalez SQL 2 14-09-2005 20:22:25
Duda sobre consulta SQL kukinn SQL 2 17-10-2003 09:59:43


La franja horaria es GMT +2. Ahora son las 10:00:20.


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