Använd:
WHERE registrationdate BETWEEN '01/01/2003' AND '12/31/2003'
...men som gbn påpekade, för att vara säker - använd:
WHERE registrationdate BETWEEN '20030101' AND '20031231'
SQL Server kommer att utföra implicit konvertering av strängen till ett datum, förutsatt att det är ett format som stöds. Explicit konvertering är när du måste använda CAST eller CONVERT för att ändra datatypen.
När du konverterar '01/01/2003' till en DATETIME, kommer tidsdelen att vara 00:00:00 eftersom den inte specificerades.