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

Insertar Rango de Fechas.

Estas en el tema de Insertar Rango de Fechas. en el foro de SQL Server en Foros del Web. Hola foreros, espero puedan ayudarme con el siguiente problema por que no puedo con él !!! Verán, tengo dos rangos de fechas: 2005-09-22 2006-05-24 ¿Como ...
  #1 (permalink)  
Antiguo 26/09/2006, 09:02
 
Fecha de Ingreso: junio-2003
Ubicación: Asturias
Mensajes: 2.429
Antigüedad: 20 años, 11 meses
Puntos: 7
Insertar Rango de Fechas.

Hola foreros, espero puedan ayudarme con el siguiente problema por que no puedo con él !!!

Verán, tengo dos rangos de fechas:

2005-09-22
2006-05-24

¿Como podría hacer para insertar cada fecha y cada fecha que hay entre esas dos en una tabla? Es decir, tendría que insertar por ejemplo en una tabla llamada Dias_Enviar con el campo fecha lo siguiente:

insert into Dias_Enviar(fecha) values('2005-09-22')
insert into Dias_Enviar(fecha) values('2005-09-23')
insert into Dias_Enviar(fecha) values('2005-09-24')
.
.
.
.
insert into Dias_Enviar(fecha) values('2006-05-24')

En fin, espero haberme explicado y que puedan ayudarme por que la verdad... estoy perdido amigos.

En fin, un saludo y un fuerte abrazo para toda la gente de aqui.
__________________
Charlie.
  #2 (permalink)  
Antiguo 26/09/2006, 09:10
Avatar de Andres95
Colaborador
 
Fecha de Ingreso: diciembre-2004
Mensajes: 1.802
Antigüedad: 19 años, 4 meses
Puntos: 38
con un ciclo.. en un sp que reciba como parametro los dos rangos...

luego ciclas mientras la fecha inicial sea menor o igual que la fecha final
dentro del ciclo
-insertas la fecha inicial
- incrementas en un dia la fecha inicial (dateadd(etc) )

un saludo
  #3 (permalink)  
Antiguo 26/09/2006, 09:56
 
Fecha de Ingreso: junio-2003
Ubicación: Asturias
Mensajes: 2.429
Antigüedad: 20 años, 11 meses
Puntos: 7
Hola de nuevo gente, en primer lugar, gracias Andres95 por la aclaración. Aún asi, sigo teniendo problemas con el SP y en fin... espero puedan hecharme una mano con la sintáxis.

Actualmente tengo el siguiente SP, pero solo me imprime el siguiente día, no me recorre el bucle:
Código:
DECLARE @fechaInicio varchar(20)
DECLARE @fechaFin varchar(20)
DECLARE @otra varchar(20)

SET @fechaInicio='2006-08-23'
SET @fechaFin='2006-09-23'
SET @otra = @fechaInicio
WHILE ((SELECT @otra) < @fechaFin)
BEGIN
	SET @otra = dateadd(day, 1, @otra)
	CONTINUE
END

PRINT @otra
En fin, si alguien puede hecharme una sintáxis con el SP se lo agradecería muchísimo, ya que no somos capaces a resolver el problema.

Bueno, saludos cordiales y gracias de ante mano por la ayuda siempre ofrecida aqui.
__________________
Charlie.
  #4 (permalink)  
Antiguo 26/09/2006, 10:19
Avatar de Andres95
Colaborador
 
Fecha de Ingreso: diciembre-2004
Mensajes: 1.802
Antigüedad: 19 años, 4 meses
Puntos: 38
Código:
Declare @FechaInicial datetime
       ,@FechaFinal   datetime

Set @FechaInicial = getdate()
Set @FechaFinal = dateadd(dd, 20, @FechaInicial)

Declare @Dias_Enviar table (valor smalldatetime)

while @FechaInicial < @FechaFinal
Begin
   Insert into @Dias_Enviar values (@FechaInicial)
   Set @FechaInicial = dateadd(dd, 1, @FechaInicial)
End

Select * from @Dias_Enviar
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:08.