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

[SOLUCIONADO] Incrementar fecha en 7dias

Estas en el tema de Incrementar fecha en 7dias en el foro de SQL Server en Foros del Web. Hola Buen día, Tengo la siguiente duda, ¿ como le puedo hacer para que en base a una fecha de entrada 01/01/2014 se realicen incrementos ...
  #1 (permalink)  
Antiguo 15/09/2014, 14:54
 
Fecha de Ingreso: junio-2012
Mensajes: 233
Antigüedad: 11 años, 10 meses
Puntos: 3
Pregunta Incrementar fecha en 7dias

Hola Buen día,

Tengo la siguiente duda, ¿ como le puedo hacer para que en base a una fecha de entrada 01/01/2014 se realicen incrementos de 7 días teniendo en cuenta que la suma de los 7 días se tiene que hacer 52 veces ? ya que voy a considerar que el año tiene 52 semanas.

Gracias
  #2 (permalink)  
Antiguo 15/09/2014, 15:16
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: Incrementar fecha en 7dias

Código SQL:
Ver original
  1. dateadd(dd,fecha,valor)

en tu caso

Código SQL:
Ver original
  1. SELECT dateadd(dd,'01/01/2014',7)

y como para que?? si quieres saber el numero de semana con la funcion datepart lo obtienes.....
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #3 (permalink)  
Antiguo 15/09/2014, 15:28
 
Fecha de Ingreso: junio-2012
Mensajes: 233
Antigüedad: 11 años, 10 meses
Puntos: 3
Exclamación Respuesta: Incrementar fecha en 7dias

Cita:
Iniciado por Libras Ver Mensaje
Código SQL:
Ver original
  1. dateadd(dd,fecha,valor)

en tu caso

Código SQL:
Ver original
  1. SELECT dateadd(dd,'01/01/2014',7)

y como para que?? si quieres saber el numero de semana con la función datepart lo obtienes.....
Gracias libras, lo quiero por que tengo que hacer un ciclo pero no se si con while o con cursor para que en base a la fecha ingresada se itere 52 veces y por cada iteración se imprima la fecha mas 7 días y esa fecha +7 días se vuelva incrementar y se imprima hasta llegar a las 52 iteraciones.

esto de las 52 semanas es para calendarizar el año considerando que este tiene 52 semanas

¿que me recomiendas usar para esto?

Gracias
  #4 (permalink)  
Antiguo 15/09/2014, 15:40
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: Incrementar fecha en 7dias

depende de las operaciones que vayas a hacer con tus datos, en lugar de sacar 52 semanas podrias sacar el numero de semana con alguna funcion
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #5 (permalink)  
Antiguo 15/09/2014, 15:48
 
Fecha de Ingreso: junio-2012
Mensajes: 233
Antigüedad: 11 años, 10 meses
Puntos: 3
Pregunta Respuesta: Incrementar fecha en 7dias

Cita:
Iniciado por Libras Ver Mensaje
depende de las operaciones que vayas a hacer con tus datos, en lugar de sacar 52 semanas podrias sacar el numero de semana con alguna funcion
Es que necesito visualizar como van quedando las semanas, ya probe la funcion que me pasaste

Código sql:
Ver original
  1. SELECT DATEADD(dd,7,'01/01/2014')

lo que no entiendo es ¿por que si le sumo 7 días queda en 2014-01-08 00:00:00.000

que no debería de quedar en 2014-01-09 00:00:00.000 ?

Gracias,

Saludos
  #6 (permalink)  
Antiguo 15/09/2014, 16:05
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: Incrementar fecha en 7dias

7+1=8 cierto????

Si al dia 1 le agregas 7 te queda el dia 8 no?? Po0r ejemplo este mes septiembre el dia 1 fue lunes si agregamos 7 dias nos vamos al dia 8 que es Lunes verdad??? Porque dices que tendria q ser Martes 9???

Como van quedando las semanas con la funcion datepart wk puedes obtener el numero de semana, no veo la necesidad de almacenar toda la informacion en la base de datos pero cada quien..............
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #7 (permalink)  
Antiguo 15/09/2014, 16:30
 
Fecha de Ingreso: junio-2012
Mensajes: 233
Antigüedad: 11 años, 10 meses
Puntos: 3
Respuesta: Incrementar fecha en 7dias

Hola Libras, me equivoque no era 2014-01-09 00:00:00.000 sino 2014-01-08 00:00:00.000

cuando se le suma a 2014-01-01 00:00:00.000 7 días ese es el resultado que me da SQL pero creí que me daría el 7 de enero y no el 8 ya que considero el día 1 como contabilizable.

Gracias por el dato, no lo había visto de esa manera lo de no guardarlo en la base de datos creo que eso si me sirve que que al usuario solo le mostrare como quedan las semanas al año cuando seleccione la fecha inicial. luego haré operaciones con esas semanas pero las puedo obtener ejecutando de nuevo el store que generara estas semanas.

Gracias Libras.


Saludos
  #8 (permalink)  
Antiguo 15/09/2014, 16:34
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: Incrementar fecha en 7dias

Cita:
Iniciado por antvo Ver Mensaje
Hola Libras, me equivoque no era 2014-01-09 00:00:00.000 sino 2014-01-08 00:00:00.000

cuando se le suma a 2014-01-01 00:00:00.000 7 días ese es el resultado que me da SQL pero creí que me daría el 7 de enero y no el 8 ya que considero el día 1 como contabilizable.

Gracias por el dato, no lo había visto de esa manera lo de no guardarlo en la base de datos creo que eso si me sirve que que al usuario solo le mostrare como quedan las semanas al año cuando seleccione la fecha inicial. luego haré operaciones con esas semanas pero las puedo obtener ejecutando de nuevo el store que generara estas semanas.

Gracias Libras.


Saludos
si vas a mostrar solo el numero de semana con la funcion datepart lo puedes obtener:

Código SQL:
Ver original
  1. DECLARE @Dt datetime
  2.  
  3. SELECT @Dt='02-21-2008'
  4.  
  5. SELECT DATEPART( wk, @Dt)

para que un procedure para calcular que semana es????
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #9 (permalink)  
Antiguo 17/09/2014, 08:05
 
Fecha de Ingreso: junio-2012
Mensajes: 233
Antigüedad: 11 años, 10 meses
Puntos: 3
Respuesta: Incrementar fecha en 7dias

Hola Libras

lo que voy a mostrar es como se generan las 52 o 53 semanas al año en base a la fecha de entrada del usuario.

lo que estuve viendo en las pruebas es que si la fecha de inicio es 2019-01-01 +7 días es 2019-01-08 en ves de terminar en 2019-01-07 si considero el día 1 como mi primer día , si a 2019-01-02 le sumo 7 días también me da 2019-02-08 en el día 2 si me contabiliza el 2 como mi primer día mientras que el 1ro no me lo contabiliza ¿por que hace esto sql?


Gracias.
  #10 (permalink)  
Antiguo 17/09/2014, 08:11
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: Incrementar fecha en 7dias

que version de sql estas usando?? cual es el collation que usas, porque si yo hago lo que mencionas obtengo esto:

Código SQL:
Ver original
  1. SELECT dateadd(dd,7,'01/01/2019')--2019-01-08 00:00:00.000
  2. SELECT dateadd(dd,7,'01/02/2019')--2019-01-09 00:00:00.000
  3. SELECT dateadd(dd,2,'01/01/2019')--2019-01-03 00:00:00.000

saludos!
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #11 (permalink)  
Antiguo 17/09/2014, 08:16
 
Fecha de Ingreso: junio-2012
Mensajes: 233
Antigüedad: 11 años, 10 meses
Puntos: 3
Exclamación Respuesta: Incrementar fecha en 7dias

Cita:
Iniciado por Libras Ver Mensaje
que version de sql estas usando?? cual es el collation que usas, porque si yo hago lo que mencionas obtengo esto:

Código SQL:
Ver original
  1. SELECT dateadd(dd,7,'01/01/2019')--2019-01-08 00:00:00.000
  2. SELECT dateadd(dd,7,'01/02/2019')--2019-01-09 00:00:00.000
  3. SELECT dateadd(dd,2,'01/01/2019')--2019-01-03 00:00:00.000

saludos!
Uso este collation Modern_Spanish_CI_AS ,ejecute tus consulta y también me dio la misma fecha . Entonces para considerar el primer día como contabilidad y no se valla al 8 de enero la una manera es restarle un día la fecha generada verdad?

Gracias
  #12 (permalink)  
Antiguo 17/09/2014, 08:23
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: Incrementar fecha en 7dias

mas facil en lugar de usar 7 usa 6 :P jejejejje

Código SQL:
Ver original
  1. SELECT dateadd(dd,6,'01/01/2019')--2019-01-07 00:00:00.000
  2. SELECT dateadd(dd,6,'01/02/2019')--2019-01-08 00:00:00.000
  3. SELECT dateadd(dd,1,'01/01/2019')--2019-01-02 00:00:00.000

aunque debes de considerar que las fechas se manejan diferente a los conteos en programacion por lo que 1+7=8 no 1+7=7
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #13 (permalink)  
Antiguo 17/09/2014, 08:37
 
Fecha de Ingreso: junio-2012
Mensajes: 233
Antigüedad: 11 años, 10 meses
Puntos: 3
Respuesta: Incrementar fecha en 7dias

Enterado,

Gracias Libras

Etiquetas: incrementar
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 16:05.