Ya, Anda akan menggunakan >=
dan <
biasanya untuk kueri rentang waktu/tanggal
Atau, Anda dapat mengurangi 3 milidetik dari batas atas untuk mendapatkan nilai datetime (bukan datetime2) tertinggi untuk hari itu (xxx 23:59.59.997
)
SELECT * FROM log_file
WHERE submission_date BETWEEN 1323714600000 AND 1323801000000-3
Catatan:mengurangkan 1 mungkin akan baik-baik saja jika semuanya milidetik...
Sunting, contoh mengapa 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
Dan yang menarik, apakah Anda yakin ini tengah malam?
Selama 1323813600 detik, saya mendapatkan 2011-12-13 22:00:00
Di SQL Server:
SELECT DATEADD(second, 1323813600, '19700101')
Di MySQL
SELECT FROM_UNIXTIME(1323813600)