獲得一個月的最後一天
使用 DATEADD
和 DATEDIFF
函式,可以返回一個月的最後一個日期。
SELECT DATEADD(d, -1, DATEADD(m, DATEDIFF(m, 0, '2016-09-23') + 1, 0))
-- 2016-09-30 00:00:00.000
Version >= SQL Server 2012
EOMONTH
函式提供了一種更簡潔的方式來返回一個月的最後一個日期,並且有一個可選引數來抵消月份。
SELECT EOMONTH('2016-07-21') --2016-07-31
SELECT EOMONTH('2016-07-21', 4) --2016-11-30
SELECT EOMONTH('2016-07-21', -5) --2016-02-29