按过去 5 年过滤的 SQL 语句

M.U*_*tun 0 t-sql sql-server

我目前正在编写一个 SQL 语句来过滤过去 5 年的数据,我添加了下面的 where 子句,这将使我从今天起正好 5 年。

我想问如何改进此报表以包含第 5 年的所有数据。

例如,如果今天运行,则数据不会来自 16/11/2016,而是来自 01/01/2016。

其中语句:

WHERE CreatedDate > DATEADD(YEAR,-5,GETDATE())
Run Code Online (Sandbox Code Playgroud)

use*_*983 5

DATEFROMPARTS是你的朋友:

WHERE CreatedDate >= DATEFROMPARTS(YEAR(GETDATE())-5,1,1)
Run Code Online (Sandbox Code Playgroud)