【发布时间】:2018-05-24 20:31:37
【问题描述】:
我在比较 SQL Server 中的日期(实际上是 smalldatetime)时遇到了一个奇怪的问题。在比较接近一天结束的日期时,似乎存在 30 秒的偏移/偏差:
这是正确的:
但这绝对是不正确的:
这里发生了什么?数学坏了吗?
【问题讨论】:
标签: sql sql-server datetime smalldatetime
我在比较 SQL Server 中的日期(实际上是 smalldatetime)时遇到了一个奇怪的问题。在比较接近一天结束的日期时,似乎存在 30 秒的偏移/偏差:
这是正确的:
但这绝对是不正确的:
这里发生了什么?数学坏了吗?
【问题讨论】:
标签: sql sql-server datetime smalldatetime
smalldatetime type has a accuracy of one minute 因此将文字“2019-12-31 23:59:30”四舍五入为“2020-01-01 00:00:00”。
【讨论】:
如果您阅读smalldatetime 的[文档][1],您会看到以下说明:
准确度一分钟
换句话说,字面值被四舍五入。因此,所见即所得。
【讨论】: