在写报表的时候,需要获得本月最后一天,上网查了下有这样写的
select dateadd(d,-day(getdate()),dateadd(m,1,getdate()))
但是这样计算是不准确的,如果getdate()正好为本月的最后一天,这样计算出来的时间是错误的,后来请教了大神,每月的最后一天不准确,但是每月的第一天肯定是一号,取下个月的第一天减去1天就是本月的最后一天。
select dateadd(d,-1,dateadd(m,1,convert(char(8),getdate(),120)+'01 00:00'))