SQL Server
slaat tijdsdeel op als aantal 1/300
tweede lange tik vanaf middernacht.
23:59:59.999
wordt afgerond op het dichtstbijzijnde vinkje, wat toevallig 00:00:00.000
. is van de volgende dag.
SELECT CAST(CAST('2009-12-01 00:00:00.000' AS DATETIME) AS BINARY(8)),
CAST(CAST('2009-12-01 23:59:59.997' AS DATETIME) AS BINARY(8)),
CAST(CAST('2009-12-01 23:59:59.999' AS DATETIME) AS BINARY(8))
0x00009B8F 00000000 0x00009B8F 018B81FF 0x00009B90 00000000
In de eerste waarde, het datumgedeelte, 0x9B8F
(39823
) is het aantal dagen sinds Jan 1st, 1900
, en het tijdsdeel, 0
, is het aantal tikken sinds middernacht.
In de tweede waarde, 0x018B81FF
(25919999
, of 24 * 60 * 60 * 300 - 1
) is het maximaal mogelijke aantal tikken sinds middernacht.
Ten slotte heeft de derde waarde de 0
in het tijdgedeelte en het datumgedeelte met één verhoogd.