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

crear o almacenar en una tabla el ultimo dia de cada mes desde el 2005 hasta el 2020

Estas en el tema de crear o almacenar en una tabla el ultimo dia de cada mes desde el 2005 hasta el 2020 en el foro de SQL Server en Foros del Web. Buen día, tengo un problema y no se como desarrollarlo, me dejaron como trabajo realizar un reporte histórico y en base a estos datos hacer ...
  #1 (permalink)  
Antiguo 20/03/2011, 07:25
Avatar de Pablo Cesar  
Fecha de Ingreso: septiembre-2007
Mensajes: 54
Antigüedad: 17 años, 2 meses
Puntos: 0
Busqueda crear o almacenar en una tabla el ultimo dia de cada mes desde el 2005 hasta el 2020

Buen día, tengo un problema y no se como desarrollarlo, me dejaron como trabajo realizar un reporte histórico y en base a estos datos hacer una proyección futura
ejemplo:
Los datos históricos son desde el 2008 y esto trabajando con los datos de cada fin de mes, hasta ahí todo bien.
El problema es digamos generar datos de proyección digamos en todo el 2011 en base a los datos anteriores.
entonces se me ocurrió crear una tabla que almacene el último día de cada mes, digamos hasta el 2020 pero el problema es que no encuentro el algoritmo de como crealo
  #2 (permalink)  
Antiguo 21/03/2011, 09:41
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 18 años, 3 meses
Puntos: 774
Respuesta: crear o almacenar en una tabla el ultimo dia de cada mes desde el 2005 has

declare @fecha datetime
declare @fecha1 datetime
declare @yinicial int

select @yinicial=datepart(yy,getdate())
select @fecha=convert(datetime,'01/01/2005')-(datepart(dd,'01/01/2005'-1))
print @fecha

while @yinicial<2020
begin
select @fecha1=dateadd(d,-1,@fecha)
print @fecha1
select @fecha=dateadd(m,1,@fecha)
set @yinicial=datepart(yy,@fecha)
end


el campo fecha1 es donde estan guardados los ultimos dias de cada mes :)


Saludos!
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #3 (permalink)  
Antiguo 04/08/2011, 08:23
 
Fecha de Ingreso: agosto-2011
Mensajes: 8
Antigüedad: 13 años, 3 meses
Puntos: 2
De acuerdo Respuesta: crear o almacenar en una tabla el ultimo dia de cada mes desde el 2005 has

al script anterior le falta convertir a datetime la fecha para restarle 1 día


declare @fecha datetime
declare @fecha1 datetime
declare @yinicial int

select @yinicial=datepart(yy,getdate())
select @fecha=convert(datetime,'01/01/2005')-(datepart(dd,cast('01/01/2005' as datetime)-1))
print @fecha

while @yinicial<2020
begin
select @fecha1=dateadd(d,-1,@fecha)
print @fecha1
select @fecha=dateadd(m,1,@fecha)
set @yinicial=datepart(yy,@fecha)
end



saludos
  #4 (permalink)  
Antiguo 04/08/2011, 08:28
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 18 años, 3 meses
Puntos: 774
Respuesta: crear o almacenar en una tabla el ultimo dia de cada mes desde el 2005 has

Cita:
Iniciado por givani Ver Mensaje
al script anterior le falta convertir a datetime la fecha para restarle 1 día


declare @fecha datetime
declare @fecha1 datetime
declare @yinicial int

select @yinicial=datepart(yy,getdate())
select @fecha=convert(datetime,'01/01/2005')-(datepart(dd,cast('01/01/2005' as datetime)-1))
print @fecha

while @yinicial<2020
begin
select @fecha1=dateadd(d,-1,@fecha)
print @fecha1
select @fecha=dateadd(m,1,@fecha)
set @yinicial=datepart(yy,@fecha)
end



saludos
???? pues creo que tienes razon aunque cuando lo prove no marco ningun error, pero es bueno que te corrijan los errores gracias :)
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #5 (permalink)  
Antiguo 04/08/2011, 08:32
 
Fecha de Ingreso: agosto-2011
Mensajes: 8
Antigüedad: 13 años, 3 meses
Puntos: 2
Respuesta: crear o almacenar en una tabla el ultimo dia de cada mes desde el 2005 has

Cita:
Iniciado por Libras Ver Mensaje
???? pues creo que tienes razon aunque cuando lo prove no marco ningun error, pero es bueno que te corrijan los errores gracias :)
Puede que lo hayas ejecutado en versiones anteriores a SQL 2008, en mi caso cuando migré procedimientos almacenados y consultas desde 2000 a 2008, se me presentaron varios errores, algunos de sintaxis y otros de conversión, cosa que no ocurría con 2000.


Saludos.
  #6 (permalink)  
Antiguo 04/08/2011, 08:43
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 18 años, 3 meses
Puntos: 774
Respuesta: crear o almacenar en una tabla el ultimo dia de cada mes desde el 2005 has

Cita:
Iniciado por givani Ver Mensaje
Puede que lo hayas ejecutado en versiones anteriores a SQL 2008, en mi caso cuando migré procedimientos almacenados y consultas desde 2000 a 2008, se me presentaron varios errores, algunos de sintaxis y otros de conversión, cosa que no ocurría con 2000.


Saludos.
No es por version, jajajaja, el error esta en esa parte de codigo :), ya lo probe en 2008 y 2005 y marca el error de conversion :), muchas gracias por el aporte :)

Saludos!
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me

Etiquetas: almacenar, dia, ultimo, tablas
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 19:33.