如何在SQL中获取一个月数据的最后7天?

时间:2018-07-29 21:18:33

标签: sql sql-server

我在SQL下使用了该月的最后一天,但我需要该月的最后7天:

DECLARE @dt as DATETIME = '7/29/2018'
DECLARE @LastDayOfTheMonth as DATETIME = DATEADD(DAY, -1, DATEADD(Month, 1, DATEADD(DAY,1 - DAY(@dt),@dt)))

SELECT @LastDayOfTheMonth

我也可以使用此SQL函数来获得上述结果,但是我需要任何月份记录的最后7天。

SELECT EOMONTH('7/29/2018')

1 个答案:

答案 0 :(得分:0)

只需再次使用DATEADD,即可在@LastDayOfTheMonth上多休息1至6天。

SELECT @LastDayOfTheMonth, DATEADD(DAY,-1,@LastDayOfTheMonth), ..

如果要从函数返回7个值,建议将其设为表函数。