sqlserver 获取当前的时间的上一年和上一个月。
比如现在是20130628.我想获取20120528.怎么弄?谢谢了。SQLSQL Server

解决方案 »

  1.   

    select dateadd(year,-1,GETDATE())
    select dateadd(month,-1,GETDATE())
      

  2.   

    DECLARE @DATETIME VARCHAR(10)

    SET @DATETIME = CONVERT(VARCHAR(10),dateadd(year,-1,GETDATE()),121)SELECT SubString(@DATETIME,1,4)+SubString(@DATETIME,6,2)+SubString(@DATETIME,9,2)
      

  3.   


     select getdate() today,dateadd(Month,1,getdate()) lastMonth,dateadd(year,1,getdate()) lastYear
      

  4.   


     declare @today date='20130628' select @today today
     ,convert(varchar(20),dateadd(Month,1,@today),112)lastMonth
     ,convert(varchar(20),dateadd(year,1,@today),112) lastYear
      

  5.   


    select convert(varchar(10),dateadd(mm,-1,'20130628'),112)
      

  6.   

    上一年上一个月嘛:select convert(varchar(10),dateadd(mm,-13,'20130628'),112)
      

  7.   

     select convert(varchar(10),dateadd(mm,-13,GETDATE()),112)
    谢谢你了。