Kijk eens naar Hoe Worden datums opgeslagen in SQL Server? en Hoe Werkt Between met datums in SQL Server?
Als dat een kleine datetime is, heeft het een precisie van 1 minuut, dus als het naar boven wordt afgerond, is het voor datetime 300 milliseconden
voorbeeld
DECLARE @d DATETIME
SELECT @d = '2001-12-31 23:59:59.999'
SELECT @d
2002-01-01 00:00:00.000
DECLARE @d DATETIME
SELECT @d = '2001-12-31 23:59:59.998'
SELECT @d
2001-12-31 23:59:59.997
Gebruik altijd minder dan de volgende dag om middernacht, in jouw geval
< '20100401'