首页 > 解决方案 > SQL如何从几年前的开始获取信息

问题描述

我浏览了一些帖子,但要么信息太多,要么我不太明白我在寻找什么。例如:如何获取当年的第一天和最后一天?

在一张表中,我有过去 20 年的销售订单,我只想显示从三年前的 1 月 1 日到当前日期的订单。

   AND ShipDate >= (YEAR(ShipDate)-3)

这是行不通的。

AND ShipDate >= DATEADD(YEAR,-2,GETDATE())

从今天开始,它正好显示 2 年前。

我希望最终能够创建报告,每年都显示在过去三个中,但这是第一步,到目前为止我做得不好!

标签: sqlsql-serverdatetime

解决方案


你很亲密:

AND YEAR(ShipDate) >= (YEAR(ShipDate)-3)

您将年份与日期进行比较


推荐阅读