Tak, użyjesz >=
i <
zazwyczaj dla zapytań o zakres czasu/dat
Alternatywnie możesz odjąć 3 milisekundy od górnego limitu, aby uzyskać najwyższą wartość datetime (nie nowszą datetime2) dla tego dnia (xxx 23:59.59.997
)
SELECT * FROM log_file
WHERE submission_date BETWEEN 1323714600000 AND 1323801000000-3
Uwaga:odjęcie 1 byłoby prawdopodobnie w porządku, jeśli wszystko jest milisekundami...
Edytuj, przykład dlaczego 3ms
SELECT
DATEADD(millisecond, -1, '20111214'), -- 2011-12-14 00:00:00.000
DATEADD(millisecond, -2, '20111214'), -- 2011-12-13 23:59:59.997
DATEADD(millisecond, -3, '20111214') -- 2011-12-13 23:59:59.997
Co ciekawe, czy na pewno jest północ?
Przez 1323813600 sekund otrzymuję 2011-12-13 22:00:00
Na serwerze SQL:
SELECT DATEADD(second, 1323813600, '19700101')
W MySQL
SELECT FROM_UNIXTIME(1323813600)