【问题标题】:Get Data Last Year From This Month SQL从本月获取去年的数据 SQL
【发布时间】:2018-08-13 10:26:36
【问题描述】:

我的数据库表中有单独的列中的年份和月份。(如 2017 年,第 8 个月)我需要过滤该数据,因为我需要从今天开始的过去一年的数据。我想要返回 13 个月的数据。

如果今天是 2018 年 8 月 13 日,我只需要 2017 年 8 月到 2018 年 8 月的数据。

我试过这样,

SELECT Year,Month,News
FROM TBL_NEWS
WHERE Year >= cast(datepart(yyyy,DATEADD(yyyy,-1,getdate()))

【问题讨论】:

  • 所以您想要 2017 年 8 月 1 日到 2018 年 8 月 31 日的数据?
  • @mjwills 没错。

标签: sql sql-server


【解决方案1】:

您已将日期分成两列。这可能很棘手。这是 12 个月数据的一种方法:

where datefromparts(year, month, 1) >= datefromparts(year(getdate()) - 1, month(getdate()), 1) and
      datefromparts(year, month, 1) < datefromparts(year(getdate()), month(getdate()), 1)

如果您确实需要 13 个月的数据,请将 &lt; 更改为 &lt;=

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-09-08
    • 2022-07-07
    • 2016-11-07
    • 1970-01-01
    • 2010-09-07
    相关资源
    最近更新 更多