Możesz użyć DATEPART
funkcja wyodrębniania części dat. Powinno to również sprawić, że Twoje zapytania będą bardziej wyraźne dotyczące tego, co chcesz osiągnąć:
SELECT * FROM MyTable
where DATEPART(year,CheckDate)=2009 and
DATEPART(month,CheckDate) between 10 and 12
(Istnieją również specjalnie nazwane funkcje, takie jak MONTH i YEAR , ale wolę DATEPART dla spójności, ponieważ może uzyskać dostęp do wszystkich składników datetime )
Powinieneś unikać myślenia o datetime s jako o dowolnym formacie ciągu. Traktowanie ich jako ciągów jest jednym z największych źródeł błędów, jakie napotykamy.