我试图在此日期格式的特定日期的60天之前预览日期:2013年3月3日..如何从此日期减去60天...我使用此代码但它没有工作,因为它只从日期中减去,并且没有从月份或年份中减去:
Select LTRIM(DAY(@date - 60))+'-'+CONVERT(varchar(3), DATENAME(MONTH,@date))+'-'+LTRIM(YEAR(@date))
任何帮助?
答案 0 :(得分:4)
尝试
Select DateAdd(DD,-60,cast('03-Mar-2013' as date))
返回
2013-01-02
格式化
Select Replace(Convert(varchar(11),DateAdd(DD,-60,cast('03-Mar-2013' as date)),106),' ','-')
返回
02-Jan-2013
答案 1 :(得分:2)
试试这个 -
select REPLACE(CONVERT(VARCHAR(11), DATEADD(dd, -60, cast('03-Mar-2013' as date)), 106), ' ', '-') AS [DD-Mon-YYYY]