SQL 服务器上个月的最后一天
Last day of last month in SQL Server
我需要以“2017-05-31”的格式在 SQL 服务器中获取上个月的最后一天。有谁知道如何为此编写查询?
没有 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)
我需要以“2017-05-31”的格式在 SQL 服务器中获取上个月的最后一天。有谁知道如何为此编写查询?
没有 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)