MSSQL每月最后一天:查找到正确答案(mssql每月最后一天)

MSSQL每月最后一天是一个常见的问题,在SQL语句的帮助下,您可以轻松地找到每个月最后一天:

如果您在SQL Server 2005平台上,想要查找某个月的最后一天,可以使用以下查询:

SELECT DATEADD(DAY, -1, DATEADD(MONTH, DATEDIFF(MONTH, 0, GETDATE()) + 1, 0))

此查询将为您返回当前月的最后一天。但是,如果您想查找某个月的最后一天,例如2018年1月,你可以使用如下查询:

SELECT DATEADD(DAY, -1, DATEADD(MONTH, DATEDIFF(MONTH, 0, ‘2018-1-1’) + 1, 0))

当然,您也可以使用以下查询直接获取指定年/月的最后一天:

SELECT DATEADD(DAY, -1, DATEADD(MONTH, DATEDIFF(MONTH, 0, ‘2018-1-1’) + 1, 0))

也可以用DATE_ADD()函数:

SELECT DATE_ADD(‘2018-1-1’, INTERVAL 1 MONTH-1 DAY)

另外,您还可以使用EOMONTH()函数获取最后一天:

SELECT EOMONTH(‘2018-1-1’)

此函数是基于SQL Server 2012兼容性级别版本,你可以以此方式查询:

SELECT EOMONTH(DATEADD(Month, -1, getdate()))

上述查询会返回上月的最后一天。

总结:通过使用DATEADD()、DATE_ADD()和EOMONTH()函数,可以轻松地查找每月的最后一天。此外,也可以根据需要查找指定年/月的最后一天。您只需要为查询提供准确日期,即可获得正确答案。


数据运维技术 » MSSQL每月最后一天:查找到正确答案(mssql每月最后一天)