gpt4 book ai didi

sql-server-2008 - SQL Server 2008 和毫秒

转载 作者:行者123 更新时间:2023-12-03 23:10:22 24 4
gpt4 key购买 nike

在 SQL Server 2008 中,为什么以下查询返回相同的值?

-- These all return 2011-01-01 23:59:59.997
SELECT CAST('2011-01-01 23:59:59.997' as datetime)
SELECT CAST('2011-01-01 23:59:59.998' as datetime)

为什么以下查询会舍入到第二天?
-- Returns 2011-01-02 00:00:00.000
SELECT CAST('2011-01-01 23:59:59.999' as datetime)

最佳答案

SQL Server 中 DateTime 的精度始终为 1/300 秒(3.33 毫秒),因此任何不能精确划分的值都会被四舍五入。

  • 997 保持原样
  • 998 将四舍五入为 997
  • 999 将四舍五入到 000

  • 为了获得更高的准确性,SQL Server 2008 中提供了 DateTime2 数据类型,可以精确到小数点后 7 位。

    关于sql-server-2008 - SQL Server 2008 和毫秒,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8153963/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com