我想找到今天的日期,但它应该是2年前.例如今天的日期是2010年6月12日,但我想要6/12/2008.我怎么能在SQL服务器上这样做?
Nei*_*ght 28
SELECT DATEADD(year, -2, GETDATE())
要么
SELECT DATEADD(yy, -2, GETDATE())
要么
SELECT DATEADD(yyyy, -2, GETDATE())
如果要将其存储为变量:
DECLARE @twoYearsAgo DATETIME;
SELECT @twoYearsAgo = DATEADD(year, -2, GETDATE());
Run Code Online (Sandbox Code Playgroud)
听起来你需要dateadd()函数http://msdn.microsoft.com/en-us/library/ms186819.aspx
select dateadd(yy,-2,getdate())
Run Code Online (Sandbox Code Playgroud)
2年前,这个瞬间得到你
但是,如果你想要在2年前开始一天,你可以使用
select dateadd(dd,datepart(dd,getdate())-1,dateadd(mm,datepart(mm,getdate())-1,dateadd(yy,datepart(yy,getdate())-1902,0)))
Run Code Online (Sandbox Code Playgroud)
我怀疑有一种更清晰的写作方式,但这是首先想到的.
| 归档时间: |
|
| 查看次数: |
48560 次 |
| 最近记录: |