我需要在SQL Server中以“2017-05-31”格式获取上个月的最后一天。有谁知道如何为此编写查询?
答案 0 :(得分:6)
没有SQL Server 2010(据我所知)。在SQL Server 2012+中,您可以使用EOMONTH()
:
select eomonth(dateadd(month, -1, getdate())
实际上,在任何版本中,它都可能更简单:
select dateadd(day, -day(getdate()), getdate())
哦,然后施展日期以摆脱时间成分:
select cast(dateadd(day, -day(getdate()), getdate()) as date)