Du kan bruge funktionen DATEPART()
SELECT * FROM record
WHERE (DATEPART(yy, register_date) = 2009
AND DATEPART(mm, register_date) = 10
AND DATEPART(dd, register_date) = 10)
Jeg finder denne måde let at læse, da den ignorerer tidskomponenten, og du behøver ikke bruge næste dags dato for at begrænse dit valg. Du kan gå til større eller mindre granularitet ved at tilføje ekstra klausuler ved at bruge den relevante DatePart-kode, f.eks.
AND DATEPART(hh, register_date) = 12)
for at få optegnelser lavet mellem 12 og 1.
Se MSDN DATEPART-dokumenterne for den fulde liste over gyldige argumenter.