Teníamos que averiguar el período (osea el intervalo de tiempo), en días, entre dos fechas para después usar los días para sumarlo a una fecha. Solo los días, manteniendo la hora como estaba. Combinando DATEDIFF() y DATEADD() lo podemos hacer.
Si tenemos dos parámetros de tipo DATETIME, @FechaDesde y @FechaHasta. Para averiguar la diferencia en días entre los dos hacemos:
SELECT DATEDIFF(DAY, @Fecha, @FechaLimite) -- Si esto nos da una diferencia de 40 días, supongamos, -- podemos luego, ir recorriendo todos los registros de la tabla -- que necesitabamos con las distintas fechas e ir sumando 40 a la variable @Fecha SELECT DATEADD(DAY, 40, @Fecha)
Lo bueno cuando trabajamos con la funciones es que, si no las formateamos con CAST() y CONVERT(), no perdemos la hora que tenga grabada nuestra fecha de inicio (si viene de un campo DATETIME con hora y todo). Al sumarle días, nos va a mantener la hora como estaba.
No hay comentarios.:
Publicar un comentario