2011-12-16 28 views
8

我嘗試選擇當年年份爲+1和-1之間的年份模型的產品。而我只希望年度(2011年)不是完整的日期和時間。在SQL Server中添加+ - 1年

SELECT ProductName FROM tblProduct WHERE Year BETWEEN 
year(getdate()+1) AND year(getdate()-1) 

不行的事,但也許類似...

+0

什麼是YEAR類型? – chance 2011-12-16 12:13:10

+0

選擇年(GETDATE()+ 1)=> 2011年這似乎是工作... – Bala 2011-12-16 12:14:34

回答

12

您要添加的1到GETDATE(),所以你要添加1天

SELECT ProductName FROM tblProduct WHERE Year BETWEEN 
    (year(getdate()) -1) AND (year(getdate()) + 1) 
9
SELECT dateadd(year, -1, getdate()) 

會做:

SELECT productname 
FROM tblproduct 
WHERE [year] between (select dateadd(year, -1, getdate()) AND (select dateadd(year, +1, getdate())