Para realizar operaciones entre dos fechas MSSQL tiene la función DATEDIFF. Veamos algunos ejemplos de cómo utilizarla:
declare @FechaIngreso datetimePara obtener otras diferencias podemos recurrir a la siguiente tabla:
declare @FechaEgreso datetime
select @FechaIngreso = '19981231 15:15'
select @FechaEgreso = '20021005 10:10'
Select
DATEDIFF(dd, @FechaIngreso, @FechaEgreso) AS Dias,
DATEDIFF(mm, @FechaIngreso, @FechaEgreso) AS Meses,
DATEDIFF(mi, @FechaIngreso, @FechaEgreso) AS Minutos
Parte de la fecha | Abreviaturas |
año | aa, aaaa |
trimestre | tt, t |
mes | mm, m |
día del año | da, a |
día | dd, d |
semana | sm, ss |
hora | hh |
minuto | mi, n |
segundo | ss, s |
milisegundo | Ms |
SELECT TusDatosContinuando con las operaciones con las fechas, veamos como podemos hacer para sumar, restar, días, minutos, meses, a una fecha, para ello utilizamos la función DATEADD:
FROM TuTabla
WHERE
DATEDIFF(dd, TuFecha, GetDate()) <= 7
select convert(varchar(12), DATEADD(month, -1, getdate()), 106)
as 'un mes atrás'
select convert(varchar(12), DATEADD (week, -1, getdate()), 106)
as 'una semana atrás'
select convert(varchar(12), DATEADD (day, -1, getdate()), 106) as 'ayer'