Du kan bruge DATEPART
funktion til at udtrække dele af datoer. Det bør også gøre dine forespørgsler mere eksplicitte om, hvad du søger at opnå:
SELECT * FROM MyTable
where DATEPART(year,CheckDate)=2009 and
DATEPART(month,CheckDate) between 10 and 12
(Der er også specifikt navngivne funktioner, såsom MONTH og YEAR , men jeg foretrækker DATEPART for konsistens, da den kan få adgang til alle komponenter i en datetime )
Du bør prøve at undgå at tænke på datetime s som at have nogen form for strengformat. At behandle dem som strenge er en af de største kilder til fejl, vi støder på.