如何获取随机月份的最后一天

解决方案 »

  1.   

    SELECT   DATEADD(Month,   1,   CONVERT(char(6),   GETDATE(),   112)   +   '01')   -   1
      

  2.   

    select dateadd(mm,datediff(mm,0,getdate()),31)-1这样也行。
      

  3.   

    declare @time varchar(30)
    select datepart(dd,dateadd(mm,1,@time)-datepart(dd,@time))给分
      

  4.   

    select dateadd(mm,+1,'2009-'+ltrim(cast(rand()*12 as int)+1)+'-1')-1
      

  5.   

    1.一个月第一天的
    Select DATEADD(mm, DATEDIFF(mm,0,getdate()), 0)2.本周的星期一
    Select DATEADD(wk, DATEDIFF(wk,0,getdate()), 0)3.一年的第一天
    Select DATEADD(yy, DATEDIFF(yy,0,getdate()), 0)4.季度的第一天
    Select DATEADD(qq, DATEDIFF(qq,0,getdate()), 0)5.当天的半夜
    Select DATEADD(dd, DATEDIFF(dd,0,getdate()), 0)6.上个月的最后一天
    Select dateadd(ms,-3,DATEADD(mm, DATEDIFF(mm,0,getdate()), 0))7.去年的最后一天
    Select dateadd(ms,-3,DATEADD(yy, DATEDIFF(yy,0,getdate()), 0))8.本月的最后一天
    Select dateadd(ms,-3,DATEADD(mm, DATEDIFF(m,0,getdate())+1, 0))9.本年的最后一天
    Select dateadd(ms,-3,DATEADD(yy, DATEDIFF(yy,0,getdate())+1, 0))10.本月的第一个星期一
    select DATEADD(wk, DATEDIFF(wk,0,dateadd(dd,6-datepart(day,getdate()),getdate())), 0)