如何获取当前日期 向后推15天的 日期 比如: 现在是20140616号 向后推15天是1号 我想获取的是01
就是说如果低于10号的话 是01,02,03,04,05,06,07,08,09,
我写的是:
select convert(int, DATENAME(DD,GETDATE()+15)) //获取15天后的日期 获取是 1
select case when (convert(char, DATENAME(DD,GETDATE()+15)))<10 then 0+(convert(char(2), DATENAME(DD,GETDATE()+15))) else (convert(char, DATENAME(DD,GETDATE()+15))) end
获取的 还是 1 你转成yyyy-mm-dd的格式然后用dateadd来加15天就可以了 DECLARE @a VARCHAR(10) SET @a='20140616' SELECT SUBSTRING(@a,1,4)+'-'+SUBSTRING(@a,5,2)+'-'+SUBSTRING(@a,7,2)[当前日期] select CONVERT(VARCHAR(10),DATEADD(DAY,15,SUBSTRING(@a,1,4)+'-'+SUBSTRING(@a,5,2)+'-'+SUBSTRING(@a,7,2)),121) [15天后] /* 当前日期 ---------- 2014-06-16 (1 row(s) affected) 15天后 ---------- 2014-07-01 */ select right(convert(varchar,dateadd(d,15,getdate()),111),2) '向后推15天的日期' /* 向后推15天的日期 --------- 01 (1 row(s) affected) */
|