日期:2014-05-19  浏览次数:20446 次

在sql中如何实现统计每月当中的最后一天是几号
在sql中如何统计每月当中的最后一天是几号

------解决方案--------------------
select @month as month,day = day(dateadd(day,-1,dateadd(month,1, '1900- ' + rtrim(@month) + '-1 ')))

---------------------------------------------------
declare @month int
set @month = 1
while @month <=12
begin
select @month as month,day = day(dateadd(day,-1,dateadd(month,1, '1900- ' + rtrim(@month) + '-1 ')))
set @month = @month + 1
end
------解决方案--------------------
select datepart(day,dateadd(day,-1,convert(varchar(6),dateadd(month,1,getdate()),112)+ '01 '))

------解决方案--------------------
SELECT dateadd(ms,-3,DATEADD(mm, DATEDIFF(m,0,getdate())+1,0))
得到本月的最后一天,getdate()可换成其他的日期
------解决方案--------------------
当前日期+1个月得到下月1号,然后减去一点时间就是本月最后一天了