De BETWEEN-operator is inclusief.
Van online boeken:
BETWEEN geeft TRUE als resultaat als de waarde vantest_expression groter is dan of gelijk is aan de waarde van begin_expression en kleiner dan of gelijk aan de waarde vanend_expression.
DateTime-voorbehoud
NB:Met DateTimes moet je voorzichtig zijn; als alleen een datum wordt gegeven, wordt de waarde vanaf middernacht op die dag genomen; om te voorkomen dat u tijden binnen uw einddatum mist of dat u de gegevens van de volgende dag om middernacht in meerdere bereiken herhaalt, moet uw einddatum 3 milliseconden vóór middernacht zijn op de dag die volgt op uw tot op heden. 3 milliseconden, want minder dan dit en de waarde wordt de volgende dag naar boven afgerond.
bijv. om alle waarden binnen juni 2016 te krijgen, moet u het volgende uitvoeren:
where myDateTime between '20160601' and DATEADD(millisecond, -3, '20160701')
d.w.z.
where myDateTime between '20160601 00:00:00.000' and '20160630 23:59:59.997'
datetime2 en datetimeoffset
Als u 3 ms van een datum aftrekt, bent u kwetsbaar voor ontbrekende rijen uit het 3 ms-venster. De juiste oplossing is ook de eenvoudigste:
where myDateTime >= '20160601' AND myDateTime < '20160701'