我注意到,如果一个
,则认为2个日期时间相等2010-12-31 15:13:48.000
和另一个
2010-12-31 15:13:48.001.
我在开始时认为它向上或向下舍入到最接近的完整秒数但事实证明
2010-12-31 15:13:48.002
正确记录差异。
知道为什么会这样吗?
答案 0 :(得分:5)
datetime
数据类型精确到3毫秒(0.0033秒),因此您的结果很有意义。值舍入为0.000,0.003和0.007。所以,你的第一个例子是:“2010-12-31 15:13:48.000”,第二个例子是“2010-12-31 15:13:48.003”。
您可以在documentation。
中了解相关信息答案 1 :(得分:0)
SQL Server将日期时间存储为精度1/300秒(~3.33毫秒),stated by the documentation:
从1753年1月1日到9999年12月31日的吃和时间数据,精确到三百分之一秒(相当于3.33毫秒或0.00333秒)。值将四舍五入为.000,.003或.007秒的增量,如表中所示。
因此,根据精确舍入的位置,可以认为相差最多3毫秒的时间戳相等。