日期:2014-05-17  浏览次数:20616 次

sql获取时间问题。麻烦帮个忙呗,谢谢了。
sqlserver 获取当前的时间的上一年和上一个月。
比如现在是20130628.我想获取20120528.怎么弄?谢谢了。
SQL SQL?Server

------解决方案--------------------
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)
------解决方案--------------------

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

------解决方案--------------------

 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

------解决方案--------------------

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

------解决方案--------------------
上一年上一个月嘛:

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

引用:

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