DATEADD
在向指定日期加上一段时间的基础上,返回新的 datetime 值。语法
DATEADD ( datepart , number, date ) 

解决方案 »

  1.   

    用 DATEDIFF
    lz可以查看幫助
      

  2.   


    datediff(yy,startdate,enddate)

    datediff(mm,startdate,enddate)

    datediff(dd,startdate,enddate)

    datediff(hh,startdate,enddate)

    datediff(nn,startdate,enddate)

    datediff(ss,startdate,enddate)
      

  3.   

    返回相差的年份
    select datediff(yy,'2005-01-01',getdate())
    返回相差的月份
    select datediff(mm,'2005-01-01',getdate())
    返回相差的天数
    select datediff(dd,'2005-01-01',getdate())
      

  4.   

    select cast(datediff(yy,'2005-1-1',getdate()) as varchar)+'年'+
     cast(datediff(mm,'2006-1-1',getdate()) as varchar)+'月'+
    cast(datediff(dd,'2006-1-1',getdate()) as varchar)+'天'
    結果:
                                                                                                     
    ------------------------------------------------------------------------------------------------ 
    1年0月8天
      

  5.   

    declare @definedate smalldatetime
    SET @definedate = '2005-01-28'
    select convert(varchar(4),datediff(yy,@definedate,getdate()))+'年'+
     convert(varchar(4),datediff(mm,@definedate,getdate()))+'月'+
    convert(varchar(4),datediff(dd,@definedate,getdate()))+'天'