仅获取上个月(1月份)的数据

时间:2017-01-05 12:07:14

标签: sql

过去几个月我一直在使用Month(Getdate()) - 1,而且效果很好。现在1月它不起作用。有办法解决这个问题吗?

1 个答案:

答案 0 :(得分:2)

假设您使用的是SQL Server,那么您上个月就会这样做:

dateadd(month, -1, getdate())

假设您有一个日期列,您可以通过以下操作获取上个月的数据:

where month(datecol) = month( dateadd(month, -1, getdate()) ) and
      year(datecol) = year( dateadd(month, -1, getdate()) )

如果monthyear位于不同的列中,则可以进行适当的修改。

注意:还有很多其他方法可以进行此计算。鉴于问题中的信息,这只是一种合理的方式。