Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

Intervalo de fechas

Estas en el tema de Intervalo de fechas en el foro de SQL Server en Foros del Web. Hola necesito ayuda en hacer una consulta de intervalo de fechas esto es mi caso tengo una tabla agenda con los atributos como sigue: Tabla ...
  #1 (permalink)  
Antiguo 12/06/2007, 20:41
 
Fecha de Ingreso: febrero-2006
Mensajes: 10
Antigüedad: 18 años, 3 meses
Puntos: 0
Intervalo de fechas

Hola necesito ayuda en hacer una consulta de intervalo de fechas esto es mi caso tengo una tabla agenda con los atributos como sigue:

Tabla "agenda"

Persona Fecha_Inicio Fecha_fin actividad
------- ----------- --------- ---------
Carlos 05/06/2007 10/06/2007 Actividad xxxx
Carlos 15/06/2007 18/06/2007 Actividad xxxx
Carlos 25/06/2007 27/06/2007 Actividad xxxx
carlos 30/06/2007 02/07/2007 actividad xxxx
....

Bueno en este caso solo puse los datos de una sola persona para que se entienda mejor, ya que esta tabla "agenda" guarda la actividad de varias personas.
la consulta es determinar los tiempos libres de una persona en un intervalo de fechas dados como parametros, es decir determinar la disponibilidad de una persona donde no tenga actividades,

Por ejemplo:
- determinar la disponibilidad de Carlos desde 01/06/2007 hasta 30/06/2007
Resultado deveria ser:

Fecha_Inicio_Libre Fecha_Fin_Libre
----------------- ---------------
01/06/2007 04/06/2007
11/06/2007 14/06/2007
19/06/2007 24/06/2007
28/06/2007 29/06/2007

bueno este resultado sale de comparar la tabla agenda en base a sus fechas de actividad que tiene

Explicando el resultado:

- el primer registro del resultado es
01/06/2007 al 04/06/2007

porque la consulta requerida es desde 01/06/2007 y su primera actividad carlos empieza de acuerdo a la tabla "agenda" desde el 05/06/2007 asique estaba libre hasta un dia antes

- El segudo registro del resultado es
11/06/2007 al 14/06/2007

porque Carlos su primera actividad termina el 10/06/2007 y su segunda actividad empiesa el 15/06/2007 asi que estuvo disponible desde el 11/06/2007 hasta el dia 14/06/2007

..... y asi sucesivamente para los demas resultados
claro los resultados deben ser hasta la fecha limite de la consulta que en este caso es hasta el 30/06/2007

espero que se me hayan entendido el problema les estare muy agradecidos a la ayuda en hacer el SQL para optener el resultado que explique..
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 00:50.