获取一年前的今天日​​期

Get todays date a year ago

我有一个脚本,我需要今天的日期但是从一年前开始,但是我还需要它具有以下格式的时间。

 2017-11-07 00:00:00.000

我现在已经到了一个地方,我有去年的日期,而不是 00:00:00.000 时间戳。

select  DATEADD(year, -1, GETDATE())

这个returns查询的时间是运行。

 2017-11-07 13:37:10.770

这是一个 where 子句,因为我需要从去年的今天日期获取一些数据,所以寻找一个从去年这个日期午夜开始并在 23:00:00.000 结束的 where 子句=13=]

它用于客户端 运行 SQL Server 2005。

尝试使用:

CONVERT(DateTime, DATEDIFF(DAY, 0, DATEADD(year, -1, GETDATE())))

这里有一个查询来查看实际情况:

SELECT
    GETDATE() AS today,
    DATEADD(year, -1, GETDATE()) AS today_last_year,  -- what you already have
    CONVERT(DateTime, DATEDIFF(DAY, 0, DATEADD(year, -1, GETDATE()))) AS
        today_last_year_midnight;

这返回(截至撰写此答案时):