【www.gdgbn.com--php与数据库】

declare @date  datetime
set @date=getdate()
--当前月第一天加2个月再减去1天
select dateadd(day,-1,dateadd(month,2,dateadd(month,datediff(month,0,@date),0))) as "下月最后一天"
--简化
select dateadd(day,-1,dateadd(month,datediff(month,0,@date)+2,0)) as "下月最后一天"
select dateadd(month,datediff(month,0,@date)+2,0)-1 as "下月最后一天"
--另一种算法
select dateadd(month,datediff(month,-1,@date)+1,-1) "下月最后一天"
--另一种当前月第一天算法
select dateadd(day,-1,dateadd(month,2,dateadd(day,1-datepart(day,@date),@date))) "下月最后一天"
go

本文来源:http://www.gdgbn.com/jiaocheng/26039/