请问在SQL里面 我怎么取到当前月的最大日期啊!

解决方案 »

  1.   

    select cast(convert(varchar(7),dateadd(mm,1,getdate()),120)+'-01' as datetime)-1
      

  2.   

    select dateadd(m,1,getdate()) - datepart(d,getdate())
      

  3.   


    select dateadd(day,-1,convert(char(8),dateadd(month,1,getdate()),120)+'1')
      

  4.   

    我写的是摘自邹建的书《SQL SERVER 2000开发与管理应用实例》。
      

  5.   

    select dateadd(day,-1,cast(year(getdate()) as varchar(4))+'-'+cast(month(getdate())+1 as varchar(2))+'-1')
      

  6.   

    select dateadd(day,-1,convert(varchar(8),dateadd(mm,1,getdate()),120)+'01')
      

  7.   

     happyflystone 
    无枪狙击手 
    等级:
     发表于:2008-07-02 16:03:153楼 得分:0 
    select dateadd(m,1,getdate()) - datepart(d,getdate()) 
     ----------------------------------------------
    这样写是错误的,一月份部分时间会出问题的,例如:
    select dateadd(m,1,'20030131') - datepart(d,'20030131')
    --结果:
    2003-01-28 00:00:00.000