Du kan använda DATEPART
funktion för att extrahera delar av datum. Det bör också göra dina frågor mer tydliga om vad du vill uppnå:
SELECT * FROM MyTable
where DATEPART(year,CheckDate)=2009 and
DATEPART(month,CheckDate) between 10 and 12
(Det finns också specifikt namngivna funktioner, såsom MONTH
och YEAR
, men jag föredrar DATEPART
för konsekvens eftersom den kan komma åt alla komponenter i en datetime
)
Du bör försöka undvika att tänka på datetime
s som att ha någon form av strängformat. Att behandla dem som strängar är en av de största felkällorna vi stöter på.