获取上个月日期范围


WHERE ap_CreatedDate BETWEEN DATEADD(DAY,1,EOMONTH(GETDATE(),-2)) AND EOMONTH(GETDATE(),-1)

上面的查询将返回最后一个月/前一个月,但是由于日期包含时间范围

,它从上个月的最后一天(2022-04-30)缺少2条记录:
2022-04-30 09:16:00.000
2022-04-30 19:11:02.907

我目前正在手动提取日期

where ap_CreatedDate >= '2022-04-01' and ap_CreatedDate < '2022-05-01'

但我想自动化这个过程,任何帮助将不胜感激

最清晰、最不容易出错的方法如下:

  • 使用大于等于>=作为下限
  • 使用低于<的上限,并将该上限设置为次月1日
WHERE ap_CreatedDate >= DATEADD(DAY, 1, EOMONTH(GETDATE(), -2))
AND ap_CreatedDate < DATEADD(DAY, 1, EOMONTH(GETDATE(), -1))
  • 不要使用between,因为它所涵盖的内容不直观,你可能会以这个问题结束

相关内容

  • 没有找到相关文章

最新更新