1

在比较 SQL Server 中的日期(实际上是 smalldatetime)时,我遇到了一个奇怪的问题。在比较接近一天结束的日期时,似乎有 30 秒的偏移/偏差:

这是对的:

在此处输入图像描述

但这绝对是不正确的:

在此处输入图像描述

这里发生了什么?数学坏了吗?

4

2 回答 2

4

smalldatetime类型的精度为一分钟,因此文字“2019-12-31 23:59:30”四舍五入为“2020-01-01 00:00:00”。

于 2018-05-24T20:39:03.687 回答
4

如果您阅读 的 [文档][1] smalldatetime,您将看到以下说明:

https://docs.microsoft.com/en-us/sql/t-sql/data-types/smalldatetime-transact-sql?view=sql-server-2017

准确度一分钟

换句话说,文字值正在四舍五入。结果,所见即所得。

于 2018-05-24T20:39:40.550 回答