2011-12-16 1 views
8

Geçerli yıl +1 ile -1 arasında bir yıl modeli olan Ürünleri seçmeye çalışıyorum. Ve sadece Yılı (2011 yılı) tam tarih ve saati değil.+ 1 yıl içinde SQL Server'a ekle

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

Çalışmaz, ama belki benzer bir şey ...

+0

YEAR türü nedir? – chance

+0

select year (getdate() + 1) => 2011. Bu çalışıyor gibi görünüyor ... – Bala

+0

Yıl veri türü INT – user1007103

cevap

12

Sen GETDATE için 1 ekliyoruz() böylece yaparlar mıydı 1 gün

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

İşleri harika! Teşekkürler! – user1007103

+0

Küçük düzeltme: (yıl (getdate()) - 1) VE (yıl (getdate()) + 1) –

+0

@ t-clausen.dk iyi yakalama! –

9
SELECT dateadd(year, -1, getdate()) 

ekliyoruz :

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